<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us">
<head>
  <meta charset="utf-8" />
  <meta name="generator" content="pandoc" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
  <title>tr-157-1-3-0.xml</title>
  <style>
    code{white-space: pre-wrap;}
    span.smallcaps{font-variant: small-caps;}
    div.columns{display: flex; gap: min(4vw, 1.5em);}
    div.column{flex: auto; overflow-x: auto;}
    div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
    /* The extra [class] is a hack that increases specificity enough to
       override a similar rule in reveal.js */
    ul.task-list[class]{list-style: none;}
    ul.task-list li input[type="checkbox"] {
      font-size: inherit;
      width: 0.8em;
      margin: 0 0.8em 0.2em -1.6em;
      vertical-align: middle;
    }
  </style>
  <!-- Sidebar ToC styles -->

  <style>
  @media screen and (min-width: 60em) {
      body {
          display: flex;
          align-items: stretch;
          margin: 0px;
          /* XXX this is experimental; may need to insert zero-width spaces */
          overflow-wrap: break-word;
      }

      #main {
          flex: 4 2 auto;
          overflow: auto;
          order: 2;
          padding: 5px;
      }

      #TOC {
          position: sticky;
          order: 1;
          flex: 1 0 auto;
          margin: 0 0;
          top: 0px;
          left: 0px;
          height: 100vh;
          line-height: 1.4;
          resize: horizontal;
          font-size: larger;
          overflow: auto;
          border-right: 1px solid #73AD21;
          padding: 5px;
          max-width: 20%;
      }

      #TOC ul {
          margin: 0.35em 0;
          padding: 0 0 0 1em;
          list-style-type: none;
      }

      #TOC ul ul {
          margin: 0.25em 0;
      }

      #TOC ul ul ul {
          margin: 0.15em 0;
      }

      #TOC {
          z-index: 1;
      }
  }
  </style>

  <!-- ToC expansion and contraction script -->

  <script>
  window.addEventListener('DOMContentLoaded', function() {
      var expandables = document.getElementsByClassName('expandable');
      for (i = 0; i < expandables.length; i++) {
          expandables[i].addEventListener('click', function() {
              this.parentElement.querySelector('.collapsed').classList
                  .toggle('expanded');
              this.classList.toggle('collapsible');
          });
      }
  });
  </script>

  <!-- ToC expansion and contraction styles -->

  <style>
  .expandable {
      cursor: pointer;
      user-select: none;
      display: list-item;
      /* Circled Plus + non-breakable space */
      list-style-type: "\2295\A0";
  }

  .collapsible {
      /* Circled Minus + non-breakable space */
      list-style-type: "\2296\A0";
  }

  .collapsed {
      display: none;
  }

  .expanded {
      display: grid; /* needed by the 'order' property */
  }
  </style>

  <!-- ToC sorting script (works for object names and profile headers) -->

  <script>
  window.addEventListener('DOMContentLoaded', function() {
      /* 'A.B.' -> {prefix: '', name: 'A.B.', 'version': ''}
         '_Baseline:1' -> {prefix: '_', name: 'Baseline', version: '1'} */
      var regex = /^(?<prefix>_?)(?<name>[^:]*)(:?)(?<version>\d*)/;
      var lists = document.getElementsByClassName('ordered');
      for (var i = 0; i < lists.length; i++) {
          var items = lists[i].children;
          var temp = [];
          for (var j = 0; j < items.length; j++) {
              /* this assumes that the first child contains the text */
              temp.push([j, items[j].children[0].innerText]);
          }
          temp.sort((a, b) => {
              /* 'Notation' (which is used for profiles) must come first */
              var a1 = a[1] == 'Notation' ? ' Notation' : a[1];
              var b1 = b[1] == 'Notation' ? ' Notation' : b[1];
              var a1_groups = a1.match(regex).groups;
              var b1_groups = b1.match(regex).groups;
              var a1_tuple =  [
                  a1_groups.name.toLowerCase() + (a1_groups.prefix || '~'),
                  parseInt(a1_groups.version || 0)];
              var b1_tuple =  [
                  b1_groups.name.toLowerCase() + (b1_groups.prefix || '~'),
                  parseInt(b1_groups.version || 0)];
              return a1_tuple < b1_tuple ? -1 : a1_tuple > b1_tuple ? 1 : 0;
          });
          temp.forEach((order_text, j) => {
              var k = order_text[0];
              items[k].style.order = j;
          });
      }
  });
  </script>

  <!-- Automatic title generation (from anchor ids) script
       XXX only works for non-deprecated object parameters and doesn't
           show correct full paths; should get rid of it? -->

  <script>
  window.addEventListener('DOMContentLoaded', function() {
      var pars = document.getElementsByClassName('parameter');
      var regex = /\w\.\w+:[0-9.]+\./;
      for (var i = 0; i < pars.length; i++) {
          if (pars[i].firstElementChild && pars[i].firstElementChild.
                  firstElementChild) {
              pars[i].firstElementChild.title =
                  pars[i].firstElementChild.firstElementChild.id.
                  replace(regex, '');
          }
      }
  });
  </script>

  <!-- Automatic on-hover link generation script -->

  <script>
  window.addEventListener('DOMContentLoaded', function() {
      var hoverlink = null;

      var anchors = document.querySelectorAll('td span[id]:not(:empty)');
      for (var i = 0; i < anchors.length; i++) {
        var cell = anchors[i].parentElement;

        cell.addEventListener('mouseenter', event => {
          var target = event.target;
          var anchor = target.querySelector('span[id]:not(:empty)');

          /* derive the item type from the row's first class item,
           * which might have a leading 'deprecated-' etc. and
           * might also contain additional hyphens */
          var itemType = (target.parentElement.classList.item(0) || 'item').
              replace(/^\w+-/, '').replace(/-/g, ' ');

          if (hoverlink) {
            hoverlink.remove();
            hoverlink = null;
          }

          hoverlink = document.createElement('a');
          hoverlink.href = '#' + anchor.id;
          hoverlink.className = 'hoverlink';
          hoverlink.title = 'Permalink to this ' + itemType;
          target.appendChild(hoverlink);
        });

        cell.addEventListener('mouseleave', () => {
          if (hoverlink) {
            hoverlink.remove();
            hoverlink = null;
          }
        });
      }
  });
  </script>

  <!-- Hoverlink styles -->

  <style>
  :root {
      --hoverlink-size: 0.9em;
  }

  .hoverlink {
      text-decoration: none;
  }

  .hoverlink::after {
      position: absolute;
      display: inline-block;
      content: "";
      width: var(--hoverlink-size);
      height: var(--hoverlink-size);
      background-size: var(--hoverlink-size) var(--hoverlink-size);
      background-image: url();
  }
  </style>

  <!-- Table body expansion and contraction script -->

  <script>
  window.addEventListener('DOMContentLoaded', function() {
      var showables = document.getElementsByClassName('showable');
      for (var i = 0; i < showables.length; i++) {
          var showable = showables[i];
          showable.addEventListener('click', function() {
              this.classList.toggle('show');
          });
      }

      showables = document.getElementsByClassName('showable2');
      for (var i = 0; i < showables.length; i++) {
          var showable = showables[i];
          showable.addEventListener('click', function(event) {
              this.classList.toggle('show2');
              event.stopPropagation();
          });
      }
  });
  </script>

  <!-- Table body expansion and contraction styles -->

  <style>
  .chevron {
      color: var(--link-color);
      cursor: pointer;
  }

  .chevron::before {
      /* Single Right-Pointing Angle Quotation Mark */
      content: "\00203A ";
  }

  .chevron .click::after {
      content: " Click to show/hide...";
  }

  .hide {
      display: none;
  }

  .show tr {
      display: table-row;
  }

  .show td div, .show ul, .show ol {
      display: block;
  }

  .show td span {
      display: inline;
  }

  .show2 *.hide {
      display: none;
  }

  </style>

  <!-- Global styles (that affect the entire document) -->

  <style>
  /* light mode support */
  @media (prefers-color-scheme: light) {
    :root {
      --background-color: white;
      --foreground-color: black;
      --diff-background-color: aliceblue;
      --link-color: blue;
      --parameter-color: white;
      --object-color: #ffff99;
      --command-color: #66cdaa;
      --event-color: #66cdaa;
      --argument-container-color: silver;
      --argument-object-color: pink;
      --argument-parameter-color: #ffe4e1;
      --mountable-object-color: #b3e0ff;
      --mountpoint-object-color: #4db8ff;
      --stripe-direction: 90deg;
      --stripe-stop-point-1: 1%;
      --stripe-stop-point-2: 2%;
      --stripe-color-deprecated: #eeeeee;
      --stripe-color-obsoleted: #dddddd;
      --stripe-color-deleted: #cccccc;
    }
  }

  /* dark mode support */
  @media (prefers-color-scheme: dark) {
    :root {
      --background-color: black;
      --foreground-color: white;
      --diff-background-color: #0f0700;
      --link-color: lightblue;
      --parameter-color: black;
      --object-color: #bbbb44;
      --command-color: #56bd9a;
      --event-color: #56bd9a;
      --argument-container-color: #777777;
      --argument-object-color: #dfa0ab;
      --argument-parameter-color: #bfa4a1;
      --mountable-object-color: #b3e0ff;
      --mountpoint-object-color: #3da8ef;
      --stripe-color-deprecated: #555555;
      --stripe-color-obsoleted: #444444;
      --stripe-color-deleted: #333333;
    }
    .hoverlink {
      filter: invert(1);
    }
  }

  body, table {
      background-color: var(--background-color);
      color: var(--foreground-color);
      font-family: helvetica, arial, sans-serif;
      font-size: 9pt;
  }

  h1 {
      font-size: 14pt;
  }

  h2 {
      font-size: 12pt;
  }

  h3 {
      font-size: 10pt;
  }

  a:link, a:visited {
      color: var(--link-color);
  }

  sup {
      vertical-align: super;
  }

  table {
      text-align: left;
      vertical-align: top;
  }

  td, th {
      padding: 2px;
      text-align: left;
      vertical-align: top;
  }

  /* this is intended for hoverlinks */
  td span {
      padding-right: 2px;
  }

  table.middle-width {
      width: 60%;
  }

  table.full-width {
      width: 100%;
  }

  thead th {
      background-color: #999999;
  }

  table.partial-border {
      border-left-style: hidden;
      border-right-style: hidden;
      border-collapse: collapse;
  }

  table.partial-border th,
  table.partial-border td {
      border-style: solid;
      border-width: 1px;
      border-color: lightgray;
  }

  td > div,
  td > p {
      margin-block-start: 0;
      margin-block-end: 1em;
  }

  td > div:last-of-type,
  td > p:last-of-type {
      margin-block-end: 0;
  }

  .centered {
      text-align: center;
  }

  .inserted {
      color: blue;
  }

  .removed {
      color: red;
      text-decoration: line-through;
  }

  /* XXX this is a bad name */
  .diffs {
      background-color: var(--diff-background-color);
      opacity: 0.8;
  }

  .parameter {
      background-color: var(--parameter-color);
  }

  .deprecated-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--parameter-color),
          var(--parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--parameter-color),
          var(--parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--parameter-color),
          var(--parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .object {
      background-color: var(--object-color);
  }

  .deprecated-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--object-color),
          var(--object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--object-color),
          var(--object-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--object-color),
          var(--object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .command {
      background-color: var(--command-color);
  }

  .deprecated-command {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--command-color),
          var(--command-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-command {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--command-color),
          var(--command-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-command {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--command-color),
          var(--command-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .event {
      background-color: var(--event-color);
  }

  .deprecated-event {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--event-color),
          var(--event-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-event {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--event-color),
          var(--event-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-event {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--event-color),
          var(--event-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .argument-container {
      background-color: var(--argument-container-color);
  }

  .deprecated-argument-container {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-container-color),
          var(--argument-container-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-argument-container {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-container-color),
          var(--argument-container-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-argument-container {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-container-color),
          var(--argument-container-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .argument-parameter {
      background-color: var(--argument-parameter-color);
  }

  .deprecated-argument-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-parameter-color),
          var(--argument-parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-argument-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-parameter-color),
          var(--argument-parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-argument-parameter {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-parameter-color),
          var(--argument-parameter-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .argument-object {
      background-color: var(--argument-object-color);
  }

  .deprecated-argument-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-object-color),
          var(--argument-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-argument-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-object-color),
          var(--argument-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-argument-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--argument-object-color),
          var(--argument-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .mountable-object {
      background-color: var(--mountable-object-color);
  }

  .deprecated-mountable-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountable-object-color),
          var(--mountable-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-mountable-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountable-object-color),
          var(--mountable-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-mountable-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountable-object-color),
          var(--mountable-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }

  .mountpoint-object {
      background-color: var(--mountpoint-object-color);
  }

  .deprecated-mountpoint-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountpoint-object-color),
          var(--mountpoint-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-1),
          var(--stripe-color-deprecated) var(--stripe-stop-point-2));
  }

  .obsoleted-mountpoint-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountpoint-object-color),
          var(--mountpoint-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-1),
          var(--stripe-color-obsoleted) var(--stripe-stop-point-2));
  }

  .deleted-mountpoint-object {
      background-image: repeating-linear-gradient(
          var(--stripe-direction),
          var(--mountpoint-object-color),
          var(--mountpoint-object-color) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-1),
          var(--stripe-color-deleted) var(--stripe-stop-point-2));
  }
  </style>

  <!-- Local styles (that affect only data model tables) -->

  <style>
  /* center column 2 (Base Type) */
  .data-type-table th:nth-child(2),
  .data-type-table td:nth-child(2) {
      text-align: center;
  }

  /* center columns 3 (Write), 5 (Object Default), 6 (Version) */
  .data-model-table th:nth-child(3),
  .data-model-table td:nth-child(3),
  .data-model-table th:nth-child(5),
  .data-model-table td:nth-child(5),
  .data-model-table th:nth-child(6),
  .data-model-table td:nth-child(6)
  {
      text-align: center;
  }

  .data-model-table th,
  .data-model-table td {
      hyphenate-character: "";
  }

  /* word wrap/break column 1 (Name) */
  .data-model-table td:first-child {
      word-wrap: break-word;
      word-break: break-all;
      min-width: 27ch;
  }

  /* word wrap/break column 2 (Base Type) */
  .data-model-table td:nth-child(2) {
      word-wrap: break-word;
      word-break: break-all;
      min-width: 12ch;
  }

  /* word wrap/break column 3 (Write) */
  .data-model-table td:nth-child(3) {
      min-width: 1ch;
  }

  /* word wrap/break column 5 (Object Default) */
  .data-model-table td:nth-child(5) {
      word-wrap: break-word;
      word-break: break-all;
      min-width: 12ch;
  }

  /* word wrap/break column 6 (Version) */
  .data-model-table td:nth-child(6) {
      min-width: 6ch;
  }

  /* center column 1 (Abbreviation) */
  .profile-notation-table th:nth-child(1),
  .profile-notation-table td:nth-child(1) {
      text-align: center;
  }

  /* center column 2 (Requirement) */
  .profile-requirements-table th:nth-child(2),
  .profile-requirements-table td:nth-child(2) {
      text-align: center;
  }
  </style>
</head>
<body>
<div id="main">
<table class="full-width">
<colgroup>
<col style="width: 3.0%;"></col>
<col style="width: 22.0%;"></col>
<col style="width: 50.0%;"></col>
<col style="width: 25.0%;"></col></colgroup>
<tbody>
<tr>
<td colspan="2"><a href="https://www.broadband-forum.org"><img width="100%" alt="Broadband Forum" src="https://www.broadband-forum.org/images/logo-broadband-forum.gif"></img></a></td>
<td class="centered" rowspan="1"><p></p>

<h1 id="component-objects-for-cwmp" class="unnumbered unlisted">Component Objects for CWMP</h1>

<h1 id="tr-157-1-3-0xml" class="unnumbered unlisted"><a href="./#tr-157-1-3-0.xml">tr-157-1-3-0.xml</a></h1></td>
<td rowspan="1"></td></tr>
<tr>
<td></td>
<td><h3 id="data-model-definition" class="unnumbered unlisted">DATA MODEL DEFINITION</h3></td></tr></tbody></table>

<h1 id="license">License</h1>

<p>Copyright (c) 2009-2017, Broadband Forum</p>

<p>Redistribution and use in source and binary forms, with or
without modification, are permitted provided that the following
conditions are met:</p>

<ol>
<li>Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.</li>
<li>Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials
provided with the distribution.</li>
<li>Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products
derived from this software without specific prior written
permission.</li></ol>

<p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS &ldquo;AS IS&rdquo; AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p>

<p>The above license is used as a license under copyright only.
Please reference the Forum IPR Policy for patent licensing terms
<a href="https://www.broadband-forum.org/ipr-policy">https://www.broadband-forum.org/ipr-policy</a>.</p>

<p>Any moral rights which are necessary to exercise under the above
license grant are also deemed granted under this license.</p>

<h1 id="data-types">Data Types</h1>

<p>The Parameters defined in this specification make use of a
limited subset of the default SOAP data types [<a href="#R.SOAP1.1">SOAP1.1</a>]. These data
types and the named data types used by this specification
are described below.</p>

<p>Note: A Parameter that is defined to be one of the named data
types is reported as such at the beginning of the Parameter’s
description via a reference back to the associated data type
definition (e.g. <em>[MACAddress]</em>). However, such parameters
still indicate their SOAP data types.</p>

<table class="full-width partial-border data-type-table">
<thead>
<tr>
<th>Data Type</th>
<th>Base Type</th>
<th>Description</th></tr></thead>
<tbody>
<tr>
<td><span id="T.base64">base64</span></td>
<td>-</td>
<td><p>Base64 encoded binary (no line-length limitation).</p>

<p>A minimum and maximum allowed length can be indicated using the form
<em>base64(Min:Max)</em>, where <em>Min</em> and <em>Max</em> are the minimum and maximum
length in characters before Base64 encoding. If either <em>Min</em> or
<em>Max</em> are missing, this indicates no limit, and if <em>Min</em> is missing
the colon can also be omitted, as in <em>base64(Max)</em>. Multiple
comma-separate ranges can be specified, in which case the length
MUST be in one of the ranges.</p></td></tr>
<tr>
<td><span id="T.boolean">boolean</span></td>
<td>-</td>
<td>Boolean, where the allowed values are <em>0</em> or <em>1</em> (or equivalently,
<em>true</em> or <em>false</em>).</td></tr>
<tr>
<td><span id="T.dateTime">dateTime</span></td>
<td>-</td>
<td>The subset of the ISO 8601 date-time format defined by the SOAP
<em>dateTime</em> type [<a href="#R.SOAP1.1">SOAP1.1</a>].</td></tr>
<tr>
<td><span id="T.hexBinary">hexBinary</span></td>
<td>-</td>
<td><p>Hex encoded binary.</p>

<p>A minimum and maximum allowed length can be indicated using the form
<em>hexBinary(Min:Max)</em>, where <em>Min</em> and <em>Max</em> are the minimum and
maximum length in characters before Hex Binary encoding. If either
<em>Min</em> or <em>Max</em> are missing, this indicates no limit, and if <em>Min</em>
is missing the colon can also be omitted, as in <em>hexBinary(Max)</em>.
Multiple comma-separated ranges can be specified, in which case the
length MUST be in one of the ranges.</p></td></tr>
<tr>
<td><span id="T.int">int</span></td>
<td>-</td>
<td><p>Integer in the range <em>-2147483648</em> to <em>+2147483647</em>, inclusive.</p>

<p>For some <em>int</em> types, a value range is given using the form
<em>int(Min:Max)</em> or <em>int(Min:Max step Step)</em> where the <em>Min</em> and <em>Max</em>
values are inclusive. If either <em>Min</em> or <em>Max</em> are missing,
this indicates no limit. If <em>Step</em> is missing, this indicates a
step of <em>1</em>. Multiple comma-separated ranges can be specified,
in which case the value will be in one of the ranges.</p></td></tr>
<tr>
<td><span id="T.string">string</span></td>
<td>-</td>
<td>For strings, a minimum and maximum allowed length can be indicated
using the form <em>string(Min:Max)</em>, where <em>Min</em> and <em>Max</em> are the minimum
and maximum string length in characters. If either <em>Min</em> or <em>Max</em>
are missing, this indicates no limit, and if <em>Min</em> is missing the
colon can also be omitted, as in <em>string(Max)</em>. Multiple
comma-separated ranges can be specified, in which case the string
length will be in one of the ranges.</td></tr>
<tr>
<td><span id="T.unsignedInt">unsignedInt</span></td>
<td>-</td>
<td><p>Unsigned integer in the range <em>0</em> to <em>4294967295</em>, inclusive.</p>

<p>For some <em>unsignedInt</em> types, a value range is given using the form
<em>unsignedInt(Min:Max)</em> or <em>unsigned(Min:Max step Step)</em>, where the
<em>Min</em> and <em>Max</em> values are inclusive. If either <em>Min</em> or <em>Max</em> are
missing, this indicates no limit. If <em>Step</em> is missing,
this indicates a step of <em>1</em>. Multiple comma-separated ranges can be
specified, in which case the value will be in one of the ranges.</p></td></tr>
<tr>
<td><span id="T.IPAddress">IPAddress</span></td>
<td><a href="#T.string">string</a>(:45)</td>
<td><p>IP address, i.e. IPv4 address (or IPv4 subnet mask) or IPv6 address.</p>

<p>All IPv4 addresses and subnet masks MUST be represented as strings in
IPv4 dotted-decimal notation. Here are some examples of valid IPv4
address textual representations:</p>

<ul>
<li>216.52.29.100</li>
<li>192.168.1.254</li></ul>

<p>All IPv6 addresses MUST be represented using any of the 3 standard
textual representations defined in [<a href="#R.RFC4291">RFC4291</a>] Sections 2.2.1,
2.2.2 and 2.2.3. Both lower-case and upper-case letters can be used, but
use of lower-case letters is RECOMMENDED. Here are some examples of valid
IPv6 address textual representations:</p>

<ul>
<li>1080:0:0:800:ba98:3210:11aa:12dd</li>
<li>1080::800:ba98:3210:11aa:12dd</li>
<li>0:0:0:0:0:0:13.1.68.3</li></ul>

<p>IPv6 addresses MUST NOT include zone identifiers. Zone identifiers are
discussed in [<a href="#R.RFC4007">Section 6/RFC4007</a>].</p>

<p>Unspecified or inapplicable addresses (or IPv4 subnet masks) MUST be
represented as empty strings unless otherwise specified by the parameter
definition.</p></td></tr>
<tr>
<td><span id="T.MACAddress">MACAddress</span></td>
<td><a href="#T.string">string</a>(:17)</td>
<td><p>All MAC addresses are represented as strings of 12 hexadecimal digits
(digits 0-9, letters A-F or a-f) displayed as six pairs of digits
separated by colons. Unspecified or inapplicable MAC addresses MUST be
represented as empty strings unless otherwise specified by the parameter
definition.</p>

<p>Possible patterns:</p>

<ul>
<li><span id="D.."><em>&lt;Empty&gt;</em></span> (an empty string)</li>
<li><span id="D..0-9A-Fa-f0-9A-Fa-f:50-9A-Fa-f0-9A-Fa-f"><code>([0-9A-Fa-f][0-9A-Fa-f]:){5}([0-9A-Fa-f][0-9A-Fa-f])</code></span></li></ul></td></tr></tbody></table>

<h1 id="references">References</h1>

<table>
<tbody>
<tr>
<td><a href="https://www.dlna.org/industry/certification/guidelines/">[<span id="R.DLNA-NDIG">DLNA-NDIG</span>]</a></td>
<td>DLNA Networked Device Interoperability Guidelines, <em>DLNA Networked Device Interoperability Guidelines, Volume 2: Media
Format Profiles.</em>, DLNA, October 2006.</td></tr>
<tr>
<td><a href="https://webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=27769">[<span id="R.DVB-TS.102.824">DVB-TS.102.824</span>]</a></td>
<td>TS 102 824, <em>Digital Video Broadcasting (DVB);Remote Management and Firmware Update
System for DVB IP Services</em>, ETSI, July 2008.</td></tr>
<tr>
<td><a href="https://www.iana.org/assignments/uri-schemes">[<span id="R.IANA-uri-schemes">IANA-uri-schemes</span>]</a></td>
<td>IANA Uniform Resource Identifier (URI) Schemes Registry, <em>Uniform Resource Identifier (URI) Schemes</em>, IANA.</td></tr>
<tr>
<td><a href="https://www.icsalabs.com/sites/default/files/baseline.pdf">[<span id="R.ICSA-Baseline">ICSA-Baseline</span>]</a></td>
<td>ICSA Baseline Modular Firewall Certification Criteria, <em>Baseline module - version 4.1</em>, ICSA Labs, 2008.</td></tr>
<tr>
<td><a href="https://www.icsalabs.com/sites/default/files/residential.pdf">[<span id="R.ICSA-Residential">ICSA-Residential</span>]</a></td>
<td>ICSA Residential Modular Firewall Certification Criteria, <em>Required Services Security Policy - Residential Category module -
version 4.1</em>, ICSA Labs, 2008.</td></tr>
<tr>
<td><a href="https://standards.ieee.org/regauth/oui/tutorials/EUI64.html">[<span id="R.IEEE_EUI64">IEEE_EUI64</span>]</a></td>
<td>Guidelines for 64-bit Global Identifier (EUI-64) Registration Authority, <em>Guidelines for 64-bit Global Identifier (EUI-64) Registration Authority</em>, IEEE, March 1997.</td></tr>
<tr>
<td><a href="https://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=25039">[<span id="R.ISO-13818-6:1998">ISO-13818-6:1998</span>]</a></td>
<td>ISO/IEC 13818-6:1998, <em>Information Technology - Generic coding of moving pictures and
associated audio information - Part 6: Extensions for DSM-CC</em>, ISO, 1998.</td></tr>
<tr>
<td><a href="https://standards.ieee.org/faqs/regauth">[<span id="R.OUI">OUI</span>]</a></td>
<td>Organizationally Unique Identifiers (OUIs).</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc1323">[<span id="R.RFC1323">RFC1323</span>]</a></td>
<td>RFC 1323, <em>TCP Extensions for High Performance</em>, IETF, May 1992.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc2581">[<span id="R.RFC2581">RFC2581</span>]</a></td>
<td>RFC 2581, <em>TCP Congestion Control</em>, IETF, April 1999.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc2582">[<span id="R.RFC2582">RFC2582</span>]</a></td>
<td>RFC 2582, <em>The NewReno Modification to TCP’s Fast Recovery Algorithm</em>, IETF, April 1999.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc2616">[<span id="R.RFC2616">RFC2616</span>]</a></td>
<td>RFC 2616, <em>Hypertext Transfer Protocol - HTTP/1.1</em>, IETF, 1999.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc2818">[<span id="R.RFC2818">RFC2818</span>]</a></td>
<td>RFC 2818, <em>HTTP Over TLS</em>, IETF, May 2000.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc2974">[<span id="R.RFC2974">RFC2974</span>]</a></td>
<td>RFC 2974, <em>Session Announcement Protocol</em>, IETF, October 2000.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc3066">[<span id="R.RFC3066">RFC3066</span>]</a></td>
<td>RFC 3066, <em>Tags for the Identification of Languages</em>, IETF.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc3489">[<span id="R.RFC3489">RFC3489</span>]</a></td>
<td>RFC 3489, <em>STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network
Address Translators (NATs)</em>, IETF.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc3926">[<span id="R.RFC3926">RFC3926</span>]</a></td>
<td>RFC 3926, <em>FLUTE - File Delivery over Unidirectional Transport</em>, IETF, October 2004.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc3986">[<span id="R.RFC3986">RFC3986</span>]</a></td>
<td>RFC 3986, <em>Uniform Resource Identifier (URI): Generic Syntax</em>, IETF.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc4007">[<span id="R.RFC4007">RFC4007</span>]</a></td>
<td>RFC 4007, <em>IPv6 Scoped Address Architecture</em>, IETF.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc4122">[<span id="R.RFC4122">RFC4122</span>]</a></td>
<td>RFC 4122, <em>A Universally Unique IDentifier (UUID) URN Namespace</em>, IETF, 2005.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc4291">[<span id="R.RFC4291">RFC4291</span>]</a></td>
<td>RFC 4291, <em>IP Version 6 Addressing Architecture</em>, IETF, 2006.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc4632">[<span id="R.RFC4632">RFC4632</span>]</a></td>
<td>RFC 4632, <em>Classless Inter-domain Routing (CIDR): The Internet Address Assignment
and Aggregation Plan</em>, IETF, 2006.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc7159">[<span id="R.RFC7159">RFC7159</span>]</a></td>
<td>RFC7159, <em>The JavaScript Object Notation (JSON) Data Interchange Format</em>, IETF, March 2014.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc7230">[<span id="R.RFC7230">RFC7230</span>]</a></td>
<td>RFC 7230, <em>Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing</em>, IETF, June 2014.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc7252">[<span id="R.RFC7252">RFC7252</span>]</a></td>
<td>RFC 7252, <em>The Constrained Application Protocol (CoAP)</em>, IETF, June 2014.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc793">[<span id="R.RFC793">RFC793</span>]</a></td>
<td>RFC 793, <em>Transmission Control Protocol</em>, IETF, September 1981.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc8141">[<span id="R.RFC8141">RFC8141</span>]</a></td>
<td>RFC 8141, <em>Uniform Resource Names (URNs)</em>, IETF, April 2017.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc862">[<span id="R.RFC862">RFC862</span>]</a></td>
<td>RFC 862, <em>Echo Protocol</em>, IETF, 1983.</td></tr>
<tr>
<td><a href="https://www.rfc-editor.org/rfc/rfc958">[<span id="R.RFC959">RFC959</span>]</a></td>
<td>RFC 959, <em>File Transfer Protocol</em>, IETF, 1985.</td></tr>
<tr>
<td><a href="https://www.w3.org/TR/2000/NOTE-SOAP-20000508">[<span id="R.SOAP1.1">SOAP1.1</span>]</a></td>
<td>Simple Object Access Protocol (SOAP) 1.1, W3C.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-069.pdf">[<span id="R.TR-069">TR-069</span>]</a></td>
<td>TR-069 Amendment 6, <em>CPE WAN Management Protocol</em>, Broadband Forum, April 2018.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-069_Amendment-2.pdf">[<span id="R.TR-069a2">TR-069a2</span>]</a></td>
<td>TR-069 Amendment 2, <em>CPE WAN Management Protocol</em>, Broadband Forum, December 2007.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-069_Amendment-3.pdf">[<span id="R.TR-069a3">TR-069a3</span>]</a></td>
<td>TR-069 Amendment 3, <em>CPE WAN Management Protocol</em>, Broadband Forum, November 2010.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-106.pdf">[<span id="R.TR-106">TR-106</span>]</a></td>
<td>TR-106 Amendment 8, <em>Data Model Template for CWMP Endpoints and USP Agents</em>, Broadband Forum, May 2018.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-106_Amendment-2.pdf">[<span id="R.TR-106a2">TR-106a2</span>]</a></td>
<td>TR-106 Amendment 2, <em>Data Model Template for TR-069-Enabled Devices</em>, Broadband Forum, November 2008.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-106_Amendment-3.pdf">[<span id="R.TR-106a3">TR-106a3</span>]</a></td>
<td>TR-106 Amendment 3, <em>Data Model Template for TR-069-Enabled Devices</em>, Broadband Forum, September 2009.</td></tr>
<tr>
<td><a href="http://www.broadband-forum.org/technical/download/TR-106_Amendment-4.pdf">[<span id="R.TR-106a4">TR-106a4</span>]</a></td>
<td>TR-106 Amendment 4, <em>Data Model Template for TR-069-Enabled Devices</em>, Broadband Forum, February 2010.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-143.pdf">[<span id="R.TR-143">TR-143</span>]</a></td>
<td>TR-143 Amendment 1 Corrigendum 1, <em>Enabling Network Throughput Performance Tests and Statistical
Monitoring</em>, Broadband Forum, August 2015.</td></tr>
<tr>
<td><a href="https://www.broadband-forum.org/download/TR-157.pdf">[<span id="R.TR-157">TR-157</span>]</a></td>
<td>TR-157 Amendment 10, <em>Component Objects for CWMP</em>, Broadband Forum, November 2015.</td></tr>
<tr>
<td><a href="http://www.broadband-forum.org/technical/download/TR-106_Amendment-4.pdf">[<span id="R.TR-157a3">TR-157a3</span>]</a></td>
<td>TR-157 Amendment 3, <em>Component Objects for CWMP</em>, Broadband Forum, November 2010.</td></tr>
<tr>
<td><a href="http://www.upnp.org/specs/arch/UPnP-arch-DeviceArchitecture-v1.0-20080424.pdf">[<span id="R.UPnP-DAv1">UPnP-DAv1</span>]</a></td>
<td>UPnP Device Architecture, <em>UPnP Device Architecture 1.0</em>, UPnP Forum, April 2008.</td></tr>
<tr>
<td><a href="https://www.usb.org/documents">[<span id="R.USB1.0">USB1.0</span>]</a></td>
<td>USB 1.0, <em>USB 1.0 Specification</em>, USB-IF, January 1996.</td></tr>
<tr>
<td><a href="https://www.usb.org/documents">[<span id="R.USB2.0">USB2.0</span>]</a></td>
<td>USB 2.0, <em>USB 2.0 Specification</em>, USB-IF, April 2000.</td></tr>
<tr>
<td><a href="https://www.usb.org/documents">[<span id="R.USB3.0">USB3.0</span>]</a></td>
<td>USB 3.0, <em>USB 3.0 Specification</em>, USB-IF, November 2008.</td></tr>
<tr>
<td><a href="https://csa-iot.org/all-solutions/zigbee">[<span id="R.ZigBee2007">ZigBee2007</span>]</a></td>
<td>ZigBee 2007 Specification, <em>ZigBee 2007 Specification</em>, ZigBee Alliance, October 2007.</td></tr></tbody></table>

<h1 id="legend">Legend</h1>

<table class="middle-width partial-border">
<tbody>
<tr class="object">
<td>Object definition.</td></tr>
<tr class="parameter">
<td>Parameter definition.</td></tr></tbody></table>

<h1 id="device17-data-model">Device:1.7 Data Model</h1>

<p>For a given implementation of this data model, the Agent MUST
indicate support for the highest version number of any object
or parameter that it supports. For example, even if the Agent
supports only a single parameter that was introduced in version
1.4, then it will indicate support for version 1.4. The version
number associated with each object and parameter is shown in
the <strong>Version</strong> column.</p>

<table class="full-width partial-border data-model-table">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Write</th>
<th>Description</th>
<th>Object Default</th>
<th>Version</th></tr></thead>
<tbody>
<tr class="object">
<td><span id="D.Device:1.Device.">Device.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>The top-level object for a Device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="deprecated-parameter">
<td><span id="D.Device:1.Device.DeviceSummary">DeviceSummary</span></td>
<td>string(:1024)</td>
<td>R</td>
<td><p>See [<a href="#R.TR-106">Section 3.7/TR-106</a>].</p>

<p>This parameter is DEPRECATED because <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel."><em>DeviceInfo.SupportedDataModel</em></a> and associated Device Type XML documents (DT Instances) provide a more granular and scalable way of describing the device’s data model.
Therefore its value MAY be an empty string if (and only if) <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel."><em>DeviceInfo.SupportedDataModel</em></a> is supported.</p>

<p>This parameter MUST always be included in Inform messages.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserNumberOfEntries">UserNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.User."><em>User</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReaderNumberOfEntries">SmartCardReaderNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.SmartCardReader."><em>SmartCardReader</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Services.">Device.Services.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains general services information.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.">Device.DeviceInfo.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains general device information.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.Manufacturer">Manufacturer</span></td>
<td>string(:64)</td>
<td>R</td>
<td>The manufacturer of the CPE (human readable string).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ManufacturerOUI">ManufacturerOUI</span></td>
<td>string(:6)</td>
<td>R</td>
<td><p>Organizationally unique identifier of the device manufacturer. Represented as a six hexadecimal-digit value using all upper-case letters and including any leading zeros. The value MUST be a valid OUI as defined in [<a href="#R.OUI">OUI</a>].</p>

<p>This value MUST remain fixed over the lifetime of the device, including across firmware updates.</p>

<p>Any change would indicate that it’s a new device and would therefore require a BOOTSTRAP Inform.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ModelName">ModelName</span></td>
<td>string(:64)</td>
<td>R</td>
<td><p>Model name of the CPE (human readable string).</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.Description">Description</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>A full description of the CPE device (human readable string).</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProductClass">ProductClass</span></td>
<td>string(:64)</td>
<td>R</td>
<td><p>Identifier of the class of product for which the serial number applies. That is, for a given manufacturer, this parameter is used to identify the product or class of product over which the <a href="#D.Device:1.Device.DeviceInfo.SerialNumber"><em>SerialNumber</em></a> parameter is unique.</p>

<p>This value MUST remain fixed over the lifetime of the device, including across firmware updates.</p>

<p>Any change would indicate that it’s a new device and would therefore require a BOOTSTRAP Inform.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SerialNumber">SerialNumber</span></td>
<td>string(:64)</td>
<td>R</td>
<td><p>Serial number of the CPE.</p>

<p>This value MUST remain fixed over the lifetime of the device, including across firmware updates.</p>

<p>Any change would indicate that it’s a new device and would therefore require a BOOTSTRAP Inform.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.HardwareVersion">HardwareVersion</span></td>
<td>string(:64)</td>
<td>R</td>
<td><p>A string identifying the particular CPE model and version.</p>

<p>This parameter MUST always be included in Inform messages.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SoftwareVersion">SoftwareVersion</span></td>
<td>string(:64)</td>
<td>R</td>
<td><p>A string identifying the software version currently installed in the CPE.
To allow version comparisons, this element SHOULD be in the form of dot-delimited integers, where each successive integer represents a more minor category of variation. For example, <em>3.0.21</em> where the components mean: <em>Major.Minor.Build</em>.</p>

<p>This parameter MUST always be included in Inform messages.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="deprecated-parameter">
<td><span id="D.Device:1.Device.DeviceInfo.EnabledOptions">EnabledOptions</span></td>
<td>string[](:1024)</td>
<td>R</td>
<td>This parameter is DEPRECATED because the &ldquo;voucher mechanism&rdquo;, as defined in [<a href="#R.TR-069a3">Annex C/TR-069a3</a>] is deprecated in favor of the &ldquo;Software Module Management mechanism&rdquo; as described in [<a href="#R.TR-157a3">Appendix II/TR-157a3</a>].
Comma-separated list (maximum number of characters 1024) of strings. The OptionName of each is identical to the OptionName element of the OptionStruct described in [<a href="#R.TR-069a3">TR-069a3</a>]. Only those options are listed whose State indicates the option is enabled.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.AdditionalHardwareVersion">AdditionalHardwareVersion</span></td>
<td>string[](:64)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 64) of strings. A comma-separated list of any additional versions. Represents any additional hardware version information the vendor might wish to supply.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.AdditionalSoftwareVersion">AdditionalSoftwareVersion</span></td>
<td>string[](:64)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 64) of strings. A comma-separated list of any additional versions. Represents any additional software version information the vendor might wish to supply.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProvisioningCode">ProvisioningCode</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Identifier of the primary service provider and other provisioning information, which MAY be used by the ACS to determine service provider-specific customization and provisioning parameters.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.DeviceStatus">DeviceStatus</span></td>
<td>string</td>
<td>R</td>
<td><p>Current operational status of the device.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DeviceInfo.DeviceStatus.Up"><em>Up</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.DeviceStatus.Initializing"><em>Initializing</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.DeviceStatus.Error"><em>Error</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.DeviceStatus.Disabled"><em>Disabled</em></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.UpTime">UpTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Time in seconds since the CPE was last restarted.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.FirstUseDate">FirstUseDate</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Date and time in UTC that the CPE first both successfully established an IP-layer network connection and acquired an absolute time reference using NTP or equivalent over that network connection. The CPE MAY reset this date after a factory reset.</p>

<p>If NTP or equivalent is not available, this parameter, if present, SHOULD be set to the Unknown Time value.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.DeviceLog">DeviceLog</span></td>
<td>string(:32768)</td>
<td>R</td>
<td><p>Vendor-specific log(s).</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SupportedDataModelNumberOfEntries">SupportedDataModelNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel."><em>SupportedDataModel</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFileNumberOfEntries">VendorConfigFileNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.VendorConfigFile."><em>VendorConfigFile</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessorNumberOfEntries">ProcessorNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.Processor."><em>Processor</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFileNumberOfEntries">VendorLogFileNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile."><em>VendorLogFile</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.MemoryStatus.">Device.DeviceInfo.MemoryStatus.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Status of the device’s volatile physical memory.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.MemoryStatus.Total">Total</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The total physical RAM, in <em>kilobytes</em>, installed on the device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.MemoryStatus.Free">Free</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The free physical RAM, in <em>kilobytes</em>, currently available on the device.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.">Device.DeviceInfo.ProcessStatus.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Status of the processes on the device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.CPUUsage">CPUUsage</span></td>
<td>unsignedInt(:100)</td>
<td>R</td>
<td><p>The total amount of the CPU, in <em>percent</em>, rounded up to the nearest whole <em>percent</em>. In the case that multiple CPU are present, this value represents the average of all CPU.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.ProcessNumberOfEntries">ProcessNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process."><em>Process</em></a> table.
Since a Process can come and go very quickly, the CPE SHOULD place a locally specified limit on the frequency at which it will notify the ACS of value changes, as described in [<a href="#R.TR-069a2">Section 3.2.1/TR-069a2</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.">Device.DeviceInfo.ProcessStatus.Process.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>List of all processes running on the device.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.PID"><em>PID</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.PID">PID</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The Process Identifier.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Command">Command</span></td>
<td>string(:256)</td>
<td>R</td>
<td>The name of the command that has caused the process to exist.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Size">Size</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The size in <em>kilobytes</em> of the memory occupied by the process.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Priority">Priority</span></td>
<td>unsignedInt(:99)</td>
<td>R</td>
<td>The priority of the process where 0 is highest.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.CPUTime">CPUTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The amount of time in <em>milliseconds</em> that the process has spent taking up CPU time since the process was started.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State">State</span></td>
<td>string</td>
<td>R</td>
<td><p>The current state that the process is in.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Running"><em>Running</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Sleeping"><em>Sleeping</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Stopped"><em>Stopped</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Idle"><em>Idle</em></span> (OPTIONAL)</li>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Uninterruptible"><em>Uninterruptible</em></span> (OPTIONAL)</li>
<li><span id="D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State.Zombie"><em>Zombie</em></span> (OPTIONAL)</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.">Device.DeviceInfo.TemperatureStatus.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Status of the temperature of the device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensorNumberOfEntries">TemperatureSensorNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor."><em>TemperatureSensor</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">Device.DeviceInfo.TemperatureStatus.TemperatureSensor.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>This object represents information that the device has obtained via sampling an internal temperature sensor.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Indicates whether or not the temperature sensor is enabled.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of this temperature sensor.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status.Disabled"><em>Disabled</em></span> (The sensor is not currently sampling the temperature)</li>
<li><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status.Enabled"><em>Enabled</em></span> (The sensor is currently sampling the temperature)</li>
<li><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status.Error"><em>Error</em></span> (The sensor error currently prevents sampling the temperature)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Reset">Reset</span></td>
<td>boolean</td>
<td>W</td>
<td><p>When set to <em>true</em>, resets the temperature sensor.</p>

<p>When read, this parameter returns <em>false</em>, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.ResetTime">ResetTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The time at which this temperature sensor was reset.
Reset can be caused by:

<ul>
<li><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status"><em>Status</em></a> transition from <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status.Disabled"><em>Disabled</em></a> to <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status.Enabled"><em>Enabled</em></a></li>
<li><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Reset"><em>Reset</em></a> set to <em>true</em>.</li>
<li>An internal reset of the temperature sensor (including a reboot of the device).
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates that this temperature sensor has never been reset, which can only happen if it has never been enabled.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Name">Name</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Name of this temperature sensor. This text MUST be sufficient to distinguish this temperature sensor from other temperature sensors.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Value">Value</span></td>
<td>int(-274:)</td>
<td>R</td>
<td><p>This temperature sensor’s last good reading in <em>degrees celsius</em>.
A value of -274 (which is below absolute zero) indicates a good reading has not been obtained since last reset.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LastUpdate">LastUpdate</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>The time at which this temperature sensor’s last good reading was obtained.
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates a good reading has not been obtained since last reset.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MinValue">MinValue</span></td>
<td>int(-274:)</td>
<td>R</td>
<td>This temperature sensor’s lowest value reading in <em>degrees celsius</em> since last reset.
A value of -274 (which is below absolute zero) indicates a good reading has not been obtained since last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MinTime">MinTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The time at which this temperature sensor’s lowest value was read.
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates a good reading has not been obtained since last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MaxValue">MaxValue</span></td>
<td>int(-274:)</td>
<td>R</td>
<td>This temperature sensor’s highest value reading in <em>degrees celsius</em> since last reset.
A value of -274 (which is below absolute zero) indicates a good reading has not been obtained since last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MaxTime">MaxTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The time at which this temperature sensor’s highest value was read.
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates a good reading has not been obtained since last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmValue">LowAlarmValue</span></td>
<td>int(-274:)</td>
<td>W</td>
<td><p>This temperature sensor’s low alarm value in <em>degrees celsius</em>.
A value of -274 (which is below absolute zero) indicates a non configured value.</p>

<p>A change to this value will cause <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmTime"><em>LowAlarmTime</em></a> to be reset.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmTime">LowAlarmTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>Initial time at which this temperature sensor’s <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmValue"><em>LowAlarmValue</em></a> was encountered.
This value is only set the first time the alarm is seen and not changed until the next reset.
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates that an alarm has not been encountered since the last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmValue">HighAlarmValue</span></td>
<td>int(-274:)</td>
<td>W</td>
<td><p>This temperature sensor’s high alarm value in <em>degrees celsius</em>.
A value of -274 (which is below absolute zero) indicates a non configured value.</p>

<p>A change to this value will cause <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmTime"><em>HighAlarmTime</em></a> to be reset.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmTime">HighAlarmTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>Initial time at which this temperature sensor’s <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmValue"><em>HighAlarmValue</em></a> was encountered.
This value is only set the first time the alarm is seen and not changed until the next reset.
The Unknown Time value, as defined in [<a href="#R.TR-106a2">TR-106a2</a>], indicates that an alarm has not been encountered since the last reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.PollingInterval">PollingInterval</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The interval, measured in <em>seconds</em>, in which the device polls this <a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor."><em>TemperatureSensor</em></a>.
If the value is 0 then the device selects its own polling interval.
If the value is greater than 0 then the device MUST use this value as the polling interval.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.">Device.DeviceInfo.NetworkProperties.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines the parameters that describe how the device handles network traffic.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.MaxTCPWindowSize">MaxTCPWindowSize</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The maximum number of <em>bytes</em> of outstanding data a sender can send on a particular connection prior to an acknowledgment [<a href="#R.RFC793">RFC793</a>]. Any scaling factor SHOULD be included in this parameter [<a href="#R.RFC1323">RFC1323</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.TCPImplementation">TCPImplementation</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Indicates the TCP congestion control mechanism(s) implemented. Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.TCPImplementation.Tahoe"><em>Tahoe</em></span> (Represents the base TCP implementation in [<a href="#R.RFC793">RFC793</a>] and elements of [<a href="#R.RFC2582">RFC2582</a>])</li>
<li><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.TCPImplementation.Reno"><em>Reno</em></span> (Represents the base TCP implementation in [<a href="#R.RFC793">RFC793</a>] with the additional algorithms defined in [<a href="#R.RFC2581">RFC2581</a>])</li>
<li><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.TCPImplementation.NewReno"><em>New Reno</em></span> (Described as a modification to the Reno algorithms in [<a href="#R.RFC2582">RFC2582</a>])</li>
<li><span id="D.Device:1.Device.DeviceInfo.NetworkProperties.TCPImplementation.Vegas"><em>Vegas</em></span> (An emerging TCP congestion control mechanism)
Tahoe, Reno, and New Reno are defined in [<a href="#R.RFC2582">RFC2582</a>]</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.SupportedDataModel.">Device.DeviceInfo.SupportedDataModel.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>This table contains details of the device’s Current Supported Data Model.
The table MUST describe the device’s entire Supported Data Model. Therefore, if a device’s Supported Data Model changes at run-time, entries will need to be added or removed as appropriate.
Each table entry MUST refer to only a single Root Object or Service Object. The device MAY choose to use more than one table entry for a given Root Object or Service Object.
Considering that every device has some form of a data model, this table MUST NOT be empty.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.URL"><em>URL</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SupportedDataModel.URL">URL</span></td>
<td>string(:256)</td>
<td>R</td>
<td>URL ([<a href="#R.RFC3986">RFC3986</a>]) that describes some or all of the device’s Current Supported Data Model.
The URL MUST reference an XML file which describes the appropriate part of the Supported Data Model.
The referenced XML file MUST be compliant with the DT (Device Type) Schema that is described in [<a href="#R.TR-106a3">Annex B/TR-106a3</a>], including any additional normative requirements referenced within the Schema.
The XML file referenced by this URL MUST NOT change while the CPE is running, and SHOULD NOT change across a CPE reboot. Note that, if the same XML file is to be used for multiple CPE, this strongly suggests that the XML file referenced by this URL should <em>never</em> change.
The URL MAY permit the XML file to be accessed at run-time, in which case, the XML file MAY be located within the CPE.
Behavior in the event of an invalid URL, failure to access the referenced XML file, or an invalid XML file, is implementation-dependent.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SupportedDataModel.URN">URN</span></td>
<td>string(:256)</td>
<td>R</td>
<td>URN ([<a href="#R.RFC3986">RFC3986</a>]) that is the value of the spec attribute in the DM (data model) Instance that defines the Root Object or Service Object referenced by this table entry.
For example, if this table entry references a DT Instance that refers to the <em>Device:1.3</em> Root Object, the value of this parameter would be <em>urn:broadband-forum-org:tr-157-1-0-0</em>, because TR-157 defines <em>Device:1.3</em>. If the DT Instance instead referred to a vendor-specific Root Object, e.g. <em>X_EXAMPLE_Device:1.0</em> (derived from <em>Device:1.3</em>), the value of this parameter would be something like <em>urn:example-com:device-1-0-0</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.SupportedDataModel.Features">Features</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. This parameter MUST list exactly the features that are defined using the top-level <em>feature</em> element in the DT Instance referenced by <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.URL"><em>URL</em></a>.
For example, if the DT instance specified the following:</p>

<blockquote><feature name="DNSServer"/>
</blockquote>

<blockquote><feature name="Router"/>
</blockquote>

<blockquote><feature name="X_MyDeviceFeature"/>
</blockquote>

<p>then the value of this parameter might be <em>DNSServer,Router,X_MyDeviceFeature</em>. The order in which the features are listed is not significant.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFile.">Device.DeviceInfo.VendorConfigFile.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td>Every instance of this object is a Vendor Configuration File, and contains parameters associated with the Vendor Configuration File.
This table of Vendor Configuration Files is for information only and does not allow the ACS to operate on these files in any way.
Whenever the CPE successfully downloads a configuration file as a result of the Download RPC with the FileType argument of <em>3 Vendor Configuration File</em>, the CPE MUST update this table. If the name of the file (determined as described in the definition of the <a href="#D.Device:1.Device.DeviceInfo.VendorConfigFile.Name"><em>Name</em></a> parameter) differs from that of any existing instance, then the CPE MUST create a new instance to represent this file. If instead, the name of the file is identical to that of an existing instance, then the CPE MUST update the content of the existing instance with the new version, date, and (optionally) description of the file.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFile.Name">Name</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Name of the vendor configuration file.
If the CPE is able to obtain the name of the configuration file from the file itself, then the value of this parameter MUST be set to that name.
Otherwise, if the CPE can extract the file name from the URL used to download the configuration file, then the value of this parameter MUST be set to that name.
Otherwise, the value of this parameter MUST be set to the value of the TargetFileName argument of the Download RPC used to download this configuration file.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFile.Version">Version</span></td>
<td>string(:16)</td>
<td>R</td>
<td>A string identifying the configuration file version currently used in the CPE.
If the CPE is able to obtain the version of the configuration file from the file itself, then the value of this parameter MUST be set to the obtained value.
Otherwise, the value of this parameter MUST be an empty string.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFile.Date">Date</span></td>
<td>dateTime</td>
<td>R</td>
<td>Date and time when the content of the current version of this vendor configuration file was first applied by the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorConfigFile.Description">Description</span></td>
<td>string(:256)</td>
<td>R</td>
<td>A description of the vendor configuration file (human-readable string).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.Processor.">Device.DeviceInfo.Processor.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td>Each table entry represents a hardware or virtual processor that resides on this device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture">Architecture</span></td>
<td>string</td>
<td>R</td>
<td><p>The architecture of the processor on the underlying hardware. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.arm"><em>arm</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.i386"><em>i386</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.m68010"><em>m68010</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.m68k"><em>m68k</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.mipseb"><em>mipseb</em></span> (big-endian)</li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.mipsel"><em>mipsel</em></span> (little-endian)</li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.powerpc"><em>powerpc</em></span></li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.sh3eb"><em>sh3eb</em></span> (big-endian)</li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.sh3el"><em>sh3el</em></span> (little-endian)</li>
<li><span id="D.Device:1.Device.DeviceInfo.Processor.Architecture.x86_64"><em>x86_64</em></span>
For processor architectures not included in this list, the vendor MAY include vendor-specific values, which MUST use the format defined in [<a href="#R.TR-106a4">Section 3.3/TR-106a4</a>].</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFile.">Device.DeviceInfo.VendorLogFile.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>Each table entry represents a Vendor Log File.
This table of log files is informational only and does not allow the ACS to operate on these files in any way.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.Alias"><em>Alias</em></a>, or with a given value for <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFile.Alias">Alias</span></td>
<td>string(:64)</td>
<td>W</td>
<td>A non-volatile handle used to reference this instance. <em>Alias</em> provides a mechanism for an ACS to label this instance for future reference.
An initial unique value MUST be assigned when the CPE creates an instance of this <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile."><em>VendorLogFile</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFile.Name">Name</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Name of the log file.
Typically this will be the full file system path, but provided that it is guaranteed to be unique across current and future log files, it MAY be a shorter name derived from the file system path, or be derived via another mechanism.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFile.MaximumSize">MaximumSize</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The maximum size of the log file in <em>bytes</em>. If the device doesn’t know the maximum file size then <em>MaximumSize</em> will be 0.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DeviceInfo.VendorLogFile.Persistent">Persistent</span></td>
<td>boolean</td>
<td>R</td>
<td>When <em>true</em>, the log file contents are preserved across a device reboot.
When <em>false</em>, the log file contents will be purged when the device is rebooted.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.ManagementServer.">Device.ManagementServer.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains parameters relating to the CPE’s association with an ACS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.EnableCWMP">EnableCWMP</span></td>
<td>boolean</td>
<td>W</td>
<td><p>Enables and disables the CPE’s support for CWMP.
<em>false</em> means that CWMP support in the CPE is disabled, in which case the device MUST NOT send any Inform messages to the ACS or accept any Connection Request notifications from the ACS.
<em>true</em> means that CWMP support on the CPE is enabled.
The subscriber can re-enable the CPE’s CWMP support either by performing a factory reset or by using a LAN-side protocol to change the value of this parameter back to <em>true</em>.</p>

<p>The factory default value MUST be <em>true</em>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.URL">URL</span></td>
<td>string(:256)</td>
<td>W</td>
<td>URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], for the CPE to connect to the ACS using the CPE WAN Management Protocol.
This parameter MUST be in the form of a valid HTTP or HTTPS URL.
The <em>host</em> portion of this URL is used by the CPE for validating the ACS certificate when using SSL or TLS.
Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.Username">Username</span></td>
<td>string(:256)</td>
<td>W</td>
<td><p>Username used to authenticate the CPE when making a connection to the ACS using the CPE WAN Management Protocol.
This username is used only for HTTP-based authentication of the CPE.</p>

<p>Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.Password">Password</span></td>
<td>string(:256)</td>
<td>W</td>
<td><p>Password used to authenticate the CPE when making a connection to the ACS using the CPE WAN Management Protocol.
This password is used only for HTTP-based authentication of the CPE.
When read, this parameter returns an empty string, regardless of the actual value.</p>

<p>Note that on a factory reset of the CPE, the value of this parameter might be reset to its factory value. If an ACS modifies the value of this parameter, it SHOULD be prepared to accommodate the situation that the original value is restored as the result of a factory reset.</p>

<p>When read, this parameter returns an empty string, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.PeriodicInformEnable">PeriodicInformEnable</span></td>
<td>boolean</td>
<td>W</td>
<td>Whether or not the CPE MUST periodically send CPE information to the ACS using the Inform method call.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.PeriodicInformInterval">PeriodicInformInterval</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>The duration in seconds of the interval for which the CPE MUST attempt to connect with the ACS and call the Inform method if <a href="#D.Device:1.Device.ManagementServer.PeriodicInformEnable"><em>PeriodicInformEnable</em></a> is <em>true</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.PeriodicInformTime">PeriodicInformTime</span></td>
<td>dateTime</td>
<td>W</td>
<td>An absolute time reference in UTC to determine when the CPE will initiate the periodic Inform method calls. Each Inform call MUST occur at this reference time plus or minus an integer multiple of the <a href="#D.Device:1.Device.ManagementServer.PeriodicInformInterval"><em>PeriodicInformInterval</em></a>.
<em>PeriodicInformTime</em> is used only to set the <em>phase</em> of the periodic Informs. The actual value of <em>PeriodicInformTime</em> can be arbitrarily far into the past or future.
For example, if <a href="#D.Device:1.Device.ManagementServer.PeriodicInformInterval"><em>PeriodicInformInterval</em></a> is 86400 (a day) and if <em>PeriodicInformTime</em> is set to UTC midnight on some day (in the past, present, or future) then periodic Informs will occur every day at UTC midnight. These MUST begin on the very next midnight, even if <em>PeriodicInformTime</em> refers to a day in the future.
The Unknown Time value defined in [<a href="#R.TR-106a2">Section 3.2/TR-106a2</a>] indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and needs only to adhere to the specified <a href="#D.Device:1.Device.ManagementServer.PeriodicInformInterval"><em>PeriodicInformInterval</em></a>.
If absolute time is not available to the CPE, its periodic Inform behavior MUST be the same as if the <em>PeriodicInformTime</em> parameter was set to the Unknown Time value.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.ParameterKey">ParameterKey</span></td>
<td>string(:32)</td>
<td>R</td>
<td><p><em>ParameterKey</em> provides the ACS a reliable and extensible means to track changes made by the ACS. The value of <em>ParameterKey</em> MUST be equal to the value of the ParameterKey argument from the most recent successful SetParameterValues, AddObject, or DeleteObject method call from the ACS.
The CPE MUST set <em>ParameterKey</em> to the value specified in the corresponding method arguments if and only if the method completes successfully and no fault response is generated. If a method call does not complete successfully (implying that the changes requested in the method did not take effect), the value of <em>ParameterKey</em> MUST NOT be modified.
The CPE MUST only modify the value of <em>ParameterKey</em> as a result of SetParameterValues, AddObject, DeleteObject, or due to a factory reset. On factory reset, the value of <em>ParameterKey</em> MUST be set to an empty string.</p>

<p>This parameter MUST always be included in Inform messages.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.ConnectionRequestURL">ConnectionRequestURL</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>HTTP URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], for an ACS to make a Connection Request notification to the CPE.
In the form:</p>

<blockquote><a href="http://host:port/path">http://host:port/path</a>
The <em>host</em> portion of the URL MAY be the IP address for the management interface of the CPE in lieu of a host name.</blockquote>

<p>This parameter MUST always be included in Inform messages.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.ConnectionRequestUsername">ConnectionRequestUsername</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Username used to authenticate an ACS making a Connection Request to the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.ConnectionRequestPassword">ConnectionRequestPassword</span></td>
<td>string(:256)</td>
<td>W</td>
<td><p>Password used to authenticate an ACS making a Connection Request to the CPE.
When read, this parameter returns an empty string, regardless of the actual value.</p>

<p>When read, this parameter returns an empty string, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.UpgradesManaged">UpgradesManaged</span></td>
<td>boolean</td>
<td>W</td>
<td>Indicates whether or not the ACS will manage upgrades for the CPE. If <em>true</em>, the CPE SHOULD NOT use other means other than the ACS to seek out available upgrades. If <em>false</em>, the CPE MAY use other means for this purpose.
Note that an autonomous upgrade (reported via an &ldquo;10 AUTONOMOUS TRANSFER COMPLETE&rdquo; Inform Event code) SHOULD be regarded as a managed upgrade if it is performed according to ACS-specified policy.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.KickURL">KickURL</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Present only for a CPE that supports the Kicked RPC method.
LAN-accessible URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], from which the CPE can be <em>kicked</em> to initiate the Kicked RPC method call. MUST be an absolute URL including a host name or IP address as would be used on the LAN side of the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DownloadProgressURL">DownloadProgressURL</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Present only for a CPE that provides a LAN-side web page to show progress during a file download.
LAN-accessible URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], to which a web-server associated with the ACS MAY redirect a user’s browser on initiation of a file download to observer the status of the download.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DefaultActiveNotificationThrottle">DefaultActiveNotificationThrottle</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>This parameter is used to control throttling of active notifications sent by the CPE to the ACS. It defines the minimum number of seconds that the CPE MUST wait since the end of the last session with the ACS before establishing a new session for the purpose of delivering an active notification.
In other words, if CPE needs to establish a new session with the ACS for the sole purpose of delivering an active notification, it MUST delay establishing such a session as needed to ensure that the minimum time since the last session completion has been met.
The time is counted since the last successfully completed session, regardless of whether or not it was used for active notifications or other purposes. However, if connection to the ACS is established for purposes other than just delivering active notifications, including for the purpose of retrying a failed session, such connection MUST NOT be delayed based on this parameter value, and the pending active notifications MUST be communicated during that connection.
The time of the last session completion does not need to be tracked across reboots.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.UDPConnectionRequestAddress">UDPConnectionRequestAddress</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>Address and port to which an ACS MAY send a UDP Connection Request to the CPE (see [<a href="#R.TR-069a2">Annex G/TR-069a2</a>]).
This parameter is represented in the form of an Authority element as defined in [<a href="#R.RFC3986">RFC3986</a>]. The value MUST be in one of the following two forms:</p>

<blockquote>host:port</blockquote>

<blockquote>host</blockquote>

<ul>
<li>When <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a> is <em>true</em>, the <em>host</em> and <em>port</em> portions of this parameter MUST represent the public address and port corresponding to the NAT binding through which the ACS can send UDP Connection Request messages (once this information is learned by the CPE through the use of STUN).</li>
<li>When <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a> is <em>false</em>, the <em>host</em> and <em>port</em> portions of the URL MUST represent the local IP address and port on which the CPE is listening for UDP Connection Request messages.
The second form of this parameter MAY be used only if the port value is equal to <em>80</em>.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.UDPConnectionRequestAddressNotificationLimit">UDPConnectionRequestAddressNotificationLimit</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The minimum time, in seconds, between Active Notifications resulting from changes to the <a href="#D.Device:1.Device.ManagementServer.UDPConnectionRequestAddress"><em>UDPConnectionRequestAddress</em></a> (if Active Notification is enabled).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNEnable">STUNEnable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables the use of STUN by the CPE. This applies only to the use of STUN in association with the ACS to allow UDP Connection Requests.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNServerAddress">STUNServerAddress</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Host name or IP address of the STUN server for the CPE to send Binding Requests if STUN is enabled via <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a>.
If is an empty string and <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a> is <em>true</em>, the CPE MUST use the address of the ACS extracted from the host portion of the ACS URL.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNServerPort">STUNServerPort</span></td>
<td>unsignedInt(0:65535)</td>
<td>W</td>
<td>Port number of the STUN server for the CPE to send Binding Requests if STUN is enabled via <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a>.
By default, this SHOULD be the equal to the default STUN port, 3478.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNUsername">STUNUsername</span></td>
<td>string(:256)</td>
<td>W</td>
<td>If is not an empty string, the value of the STUN USERNAME attribute to be used in Binding Requests (only if message integrity has been requested by the STUN server).
If is an empty string, the CPE MUST NOT send STUN Binding Requests with message integrity.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNPassword">STUNPassword</span></td>
<td>string(:256)</td>
<td>W</td>
<td><p>The value of the STUN Password to be used in computing the MESSAGE-INTEGRITY attribute to be used in Binding Requests (only if message integrity has been requested by the STUN server).
When read, this parameter returns an empty string, regardless of the actual value.</p>

<p>When read, this parameter returns an empty string, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNMaximumKeepAlivePeriod">STUNMaximumKeepAlivePeriod</span></td>
<td>int(-1:)</td>
<td>W</td>
<td>If STUN Is enabled, the maximum period, in seconds, that STUN Binding Requests MUST be sent by the CPE for the purpose of maintaining the binding in the Gateway. This applies specifically to Binding Requests sent from the UDP Connection Request address and port.
A value of -1 indicates that no maximum period is specified.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.STUNMinimumKeepAlivePeriod">STUNMinimumKeepAlivePeriod</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>If STUN Is enabled, the minimum period, in seconds, that STUN Binding Requests can be sent by the CPE for the purpose of maintaining the binding in the Gateway. This limit applies only to Binding Requests sent from the UDP Connection Request address and port, and only those that do not contain the BINDING-CHANGE attribute. This limit does not apply to retransmissions following the procedures defined in [<a href="#R.RFC3489">RFC3489</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.NATDetected">NATDetected</span></td>
<td>boolean</td>
<td>R</td>
<td>When STUN is enabled, this parameter indicates whether or not the CPE has detected address and/or port mapping in use.
A <em>true</em> value indicates that the received MAPPED-ADDRESS in the most recent Binding Response differs from the CPE’s source address and port.
When <a href="#D.Device:1.Device.ManagementServer.STUNEnable"><em>STUNEnable</em></a> is <em>false</em>, this value MUST be <em>false</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.CWMPRetryMinimumWaitInterval">CWMPRetryMinimumWaitInterval</span></td>
<td>unsignedInt(1:65535)</td>
<td>W</td>
<td>Configures the first session retry wait interval, in seconds, as specified in [<a href="#R.TR-069a2">Section 3.2.1.1/TR-069a2</a>].
A value of 5 corresponds to the default behavior that is described in [<a href="#R.TR-069a2">TR-069a2</a>].
The device MUST use a random value between <em>CWMPRetryMinimumWaitInterval</em> and (<em>CWMPRetryMinimumWaitInterval</em> * <a href="#D.Device:1.Device.ManagementServer.CWMPRetryIntervalMultiplier"><em>CWMPRetryIntervalMultiplier</em></a> / 1000) as the first retry wait interval. Other values in the retry pattern MUST be calculated using this value as a starting point.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.CWMPRetryIntervalMultiplier">CWMPRetryIntervalMultiplier</span></td>
<td>unsignedInt(1000:65535)</td>
<td>W</td>
<td>Configures the retry interval multiplier as specified in [<a href="#R.TR-069a2">Section 3.2.1.1/TR-069a2</a>].
This value is expressed in units of 0.001. Hence the values of the multiplier range between 1.000 and 65.535.
A value of 2000 corresponds to the default behavior that is described in [<a href="#R.TR-069a2">TR-069a2</a>].
The device MUST use a random value between <a href="#D.Device:1.Device.ManagementServer.CWMPRetryMinimumWaitInterval"><em>CWMPRetryMinimumWaitInterval</em></a> and (<a href="#D.Device:1.Device.ManagementServer.CWMPRetryMinimumWaitInterval"><em>CWMPRetryMinimumWaitInterval</em></a> * <em>CWMPRetryIntervalMultiplier</em> / 1000) as the first retry wait interval. Other values in the retry pattern MUST be calculated using this value as a starting point.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.">Device.ManagementServer.AutonomousTransferCompletePolicy.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object allows configuration of CPE policy for notification of AUTONOMOUS TRANSFER COMPLETE events, defined in [<a href="#R.TR-069a2">TR-069a2</a>].
The CPE policy determines the conditions under which the CPE notifies the ACS of the completion of file transfers that were not specifically requested by the ACS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enable/disable CPE notification of AUTONOMOUS TRANSFER COMPLETE events to the ACS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.TransferTypeFilter">TransferTypeFilter</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates the transfer types that MUST be included when the CPE notifies the ACS of AUTONOMOUS TRANSFER COMPLETE events. Transfer types not indicated by this filter MUST NOT be included when the CPE notifies the ACS. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.TransferTypeFilter.Upload"><em>Upload</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.TransferTypeFilter.Download"><em>Download</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.TransferTypeFilter.Both"><em>Both</em></span> (Upload and Download)
Note that this includes any backup or restore operations that were not specifically requested by the ACS. A backup is regarded as an Upload and a restore is regarded as a Download.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.ResultTypeFilter">ResultTypeFilter</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates the transfer results that MUST be included when the CPE notifies the ACS of AUTONOMOUS TRANSFER COMPLETE events. Transfer results omitted from this list MUST NOT be included when the CPE notifies the ACS.
Note that this includes any backup or restore operations that were not specifically requested by the ACS. A backup is regarded as an Upload and a restore is regarded as a Download.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.ResultTypeFilter.Success"><em>Success</em></span> (The autonomous file transfer completed successfully; i.e., the FaultCode was zero)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.ResultTypeFilter.Failure"><em>Failure</em></span> (The autonomous file transfer did not complete successfully; i.e., the FaultCode was non-zero)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.ResultTypeFilter.Both"><em>Both</em></span> (Success and Failure)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter">FileTypeFilter</span></td>
<td>string[](:1024)</td>
<td>W</td>
<td><p>Comma-separated list (maximum number of characters 1024) of strings. Indicates the file types that MUST be included when the CPE notifies the ACS of AUTONOMOUS TRANSFER COMPLETE events. File types omitted from this list MUST NOT be included when the CPE notifies the ACS.</p>

<p>Each list item matches one of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter.1FirmwareUpgradeImage"><code>1 Firmware Upgrade Image</code></span> (Download Only)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter.2WebContent"><code>2 Web Content</code></span> (Download Only)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter.3VendorConfigurationFile"><code>3 Vendor Configuration File</code></span> (Download or Upload)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter.4VendorLogFile"><code>4 Vendor Log File</code></span> (Upload Only)</li>
<li><span id="D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter.X0-9A-F6."><code>X [0-9A-F]{6} .*</code></span> (For Vendor-Specific File Types, could be for either Download or Upload)
Additionally, the following format is defined to allow the unique definition of vendor-specific file types:</li>
<li><em>&ldquo;X <OUI> <Vendor-specific identifier>&rdquo;</em>
<OUI> is replaced by a 6 hexadecimal-digit OUI (organizationally unique identifier) as defined in [<a href="#R.OUI">OUI</a>], with all upper-case letters and any leading zeros included. The OUI used for a given vendor-specific file type MUST be one that is assigned to the organization that defined this file type (which is not necessarily the same as the vendor of the CPE or ACS).
Note that an empty string indicates that all file types are excluded from this filter, effectively disabling CPE notification of AUTONOMOUS TRANSFER COMPLETE events to the ACS.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.">Device.ManagementServer.DUStateChangeComplPolicy.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object allows configuration of CPE policy for notification of &ldquo;12 AUTONOMOUS DU STATE CHANGE COMPLETE&rdquo; events defined in [<a href="#R.TR-069a3">TR-069a3</a>].
The CPE policy determines the conditions under which the CPE notifies the ACS of the completion of Deployment Unit state changes that were not specifically requested via CWMP.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables CPE notification of &ldquo;12 AUTONOMOUS DU STATE CHANGE COMPLETE&rdquo; events to the ACS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.OperationTypeFilter">OperationTypeFilter</span></td>
<td>string[]</td>
<td>W</td>
<td><p>Comma-separated list of strings. Indicates the Deployment Unit operations that MUST be included when the CPE notifies the ACS of &ldquo;12 AUTONOMOUS DU STATE CHANGE COMPLETE&rdquo; events.
Operation types not indicated by this list MUST NOT be included when the CPE notifies the ACS. An empty string is essentially the same as setting <a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.Enable"><em>Enable</em></a> to <em>false</em>.</p>

<p>Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.OperationTypeFilter.Install"><em>Install</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.OperationTypeFilter.Update"><em>Update</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.OperationTypeFilter.Uninstall"><em>Uninstall</em></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter">ResultTypeFilter</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates the Deployment Unit state change results that MUST be included when the CPE notifies the ACS of &ldquo;12 AUTONOMOUS DU STATE CHANGE COMPLETE&rdquo; events. State change results omitted from this filter MUST NOT be included when the CPE notifies the ACS.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter.Success"><em>Success</em></span> (The autonomous state change completed successfully; i.e., the FaultCode was zero)</li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter.Failure"><em>Failure</em></span> (The autonomous state change did not complete successfully; i.e., the FaultCode was non-zero)</li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter.Both"><em>Both</em></span> (All result types independent of Success or Failure)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter">FaultCodeFilter</span></td>
<td>string[]</td>
<td>W</td>
<td><p>Comma-separated list of strings. Indicates the Deployment Unit state change fault codes that MUST be included when the CPE notifies the ACS of &ldquo;12 AUTONOMOUS DU STATE CHANGE COMPLETE&rdquo; events. State change fault codes omitted from this filter MUST NOT be included when the CPE notifies the ACS.
This filter has no effect on the notification of a successful autonomous state change. This filter only applies when <a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter"><em>ResultTypeFilter</em></a> is set to either <a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter.Failure"><em>Failure</em></a> or <a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter.Both"><em>Both</em></a>. An empty string means that failed autonomous state changes will not be sent to the ACS.</p>

<p>Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9001"><em>9001</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9003"><em>9003</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9012"><em>9012</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9013"><em>9013</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9015"><em>9015</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9016"><em>9016</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9017"><em>9017</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9018"><em>9018</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9022"><em>9022</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9023"><em>9023</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9024"><em>9024</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9025"><em>9025</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9026"><em>9026</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9027"><em>9027</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9028"><em>9028</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9029"><em>9029</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9030"><em>9030</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9031"><em>9031</em></span></li>
<li><span id="D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.FaultCodeFilter.9032"><em>9032</em></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.GatewayInfo.">Device.GatewayInfo.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains information associated with a connected Internet Gateway Device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.GatewayInfo.ManufacturerOUI">ManufacturerOUI</span></td>
<td>string(:6)</td>
<td>R</td>
<td>Organizationally unique identifier of the associated Internet Gateway Device. An empty string indicates that there is no associated Internet Gateway Device that has been detected.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.GatewayInfo.ProductClass">ProductClass</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Identifier of the product class of the associated Internet Gateway Device. An empty string indicates either that there is no associated Internet Gateway Device that has been detected, or the Internet Gateway Device does not support the use of the product-class parameter.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.GatewayInfo.SerialNumber">SerialNumber</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Serial number of the associated Internet Gateway Device. An empty string indicates that there is no associated Internet Gateway Device that has been detected.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Config.">Device.Config.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains general configuration parameters.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Config.PersistentData">PersistentData</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Arbitrary user data that MUST persist across CPE reboots.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Config.ConfigFile">ConfigFile</span></td>
<td>string(:32768)</td>
<td>W</td>
<td><p>A dump of the currently running configuration on the CPE. This parameter enables the ability to backup and restore the last known good state of the CPE. It returns a vendor-specific document that defines the state of the CPE. The document MUST be capable of restoring the CPE’s state when written back to the CPE using SetParameterValues.</p>

<p>An alternative to this parameter, e.g. when the configuration file is larger than the parameter size limit, is to use the Upload and Download RPCs with a FileType of <em>1 Vendor Configuration File</em>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Time.">Device.Time.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains parameters relating an NTP or SNTP time client in the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables the NTP or SNTP time client.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.NTPServer1">NTPServer1</span></td>
<td>string(:64)</td>
<td>W</td>
<td>First NTP timeserver. Either a host name or IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.NTPServer2">NTPServer2</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Second NTP timeserver. Either a host name or IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.NTPServer3">NTPServer3</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Third NTP timeserver. Either a host name or IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.NTPServer4">NTPServer4</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Fourth NTP timeserver. Either a host name or IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.NTPServer5">NTPServer5</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Fifth NTP timeserver. Either a host name or IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.CurrentLocalTime">CurrentLocalTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>The current date and time in the CPE’s local time zone.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.LocalTimeZone">LocalTimeZone</span></td>
<td>string(:256)</td>
<td>W</td>
<td><p>The local time zone definition, encoded according to IEEE 1003.1 (POSIX). The following is an example value:</p>

<blockquote>EST+5 EDT,M4.1.0/2,M10.5.0/2</blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Time.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Status of Time support on the CPE. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.Time.Status.Disabled"><em>Disabled</em></span></li>
<li><span id="D.Device:1.Device.Time.Status.Unsynchronized"><em>Unsynchronized</em></span></li>
<li><span id="D.Device:1.Device.Time.Status.Synchronized"><em>Synchronized</em></span></li>
<li><span id="D.Device:1.Device.Time.Status.Error_FailedToSynchronize"><em>Error_FailedToSynchronize</em></span></li>
<li><span id="D.Device:1.Device.Time.Status.Error"><em>Error</em></span> (OPTIONAL)
The <a href="#D.Device:1.Device.Time.Status.Unsynchronized"><em>Unsynchronized</em></a> value indicates that the CPE’s absolute time has not yet been set.
The <a href="#D.Device:1.Device.Time.Status.Synchronized"><em>Synchronized</em></a> value indicates that the CPE has acquired accurate absolute time; its current time is accurate.
The <a href="#D.Device:1.Device.Time.Status.Error_FailedToSynchronize"><em>Error_FailedToSynchronize</em></a> value indicates that the CPE failed to acquire accurate absolute time; its current time is not accurate.
The <a href="#D.Device:1.Device.Time.Status.Error"><em>Error</em></a> value MAY be used by the CPE to indicate a locally defined error condition.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UserInterface.">Device.UserInterface.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains parameters relating to the user interface of the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.PasswordRequired">PasswordRequired</span></td>
<td>boolean</td>
<td>W</td>
<td>Present only if the CPE provides a password-protected LAN-side user interface.
Indicates whether or not the local user interface MUST require a password to be chosen by the user. If <em>false</em>, the choice of whether or not a password is used is left to the user.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.PasswordUserSelectable">PasswordUserSelectable</span></td>
<td>boolean</td>
<td>W</td>
<td>Present only if the CPE provides a password-protected LAN-side user interface and supports LAN-side Auto-Configuration.
Indicates whether or not a password to protect the local user interface of the CPE MAY be selected by the user directly, or MUST be equal to the password used by the LAN-side Auto-Configuration protocol.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.UpgradeAvailable">UpgradeAvailable</span></td>
<td>boolean</td>
<td>W</td>
<td>Indicates that a CPE upgrade is available, allowing the CPE to display this information to the user.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.WarrantyDate">WarrantyDate</span></td>
<td>dateTime</td>
<td>W</td>
<td>Indicates the date and time in UTC that the warranty associated with the CPE is to expire.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPName">ISPName</span></td>
<td>string(:64)</td>
<td>W</td>
<td>The name of the customer’s ISP.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPHelpDesk">ISPHelpDesk</span></td>
<td>string(:32)</td>
<td>W</td>
<td>The help desk phone number of the ISP.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPHomePage">ISPHomePage</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL of the ISP’s home page.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPHelpPage">ISPHelpPage</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL of the ISP’s on-line support page.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPLogo">ISPLogo</span></td>
<td>base64(0:4095)</td>
<td>W</td>
<td>Base64 encoded GIF or JPEG image. The binary image is constrained to 4095 bytes or less.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPLogoSize">ISPLogoSize</span></td>
<td>unsignedInt(0:4095)</td>
<td>W</td>
<td>Un-encoded binary image size in bytes.
If ISPLogoSize input value is 0 then the ISPLogo is cleared.
ISPLogoSize can also be used as a check to verify correct transfer and conversion of Base64 string to image size.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPMailServer">ISPMailServer</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL of the ISP’s mail server.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ISPNewsServer">ISPNewsServer</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL of the ISP’s news server.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.TextColor">TextColor</span></td>
<td>string(:6)</td>
<td>W</td>
<td>The color of text on the GUI screens in RGB hexidecimal notation (e.g., FF0088).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.BackgroundColor">BackgroundColor</span></td>
<td>string(:6)</td>
<td>W</td>
<td>The color of the GUI screen backgrounds in RGB hexidecimal notation (e.g., FF0088).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ButtonColor">ButtonColor</span></td>
<td>string(:6)</td>
<td>W</td>
<td>The color of buttons on the GUI screens in RGB hexidecimal notation (e.g., FF0088).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.ButtonTextColor">ButtonTextColor</span></td>
<td>string(:6)</td>
<td>W</td>
<td>The color of text on buttons on the GUI screens in RGB hexidecimal notation (e.g., FF0088).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.AutoUpdateServer">AutoUpdateServer</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The server the CPE can check to see if an update is available for direct download to it. This MUST NOT be used by the CPE if the <a href="#D.Device:1.Device.ManagementServer.UpgradesManaged"><em>ManagementServer.UpgradesManaged</em></a> parameter is <em>true</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.UserUpdateServer">UserUpdateServer</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The server where a user can check via a web browser if an update is available for download to a PC. This MUST NOT be used by the CPE if the <a href="#D.Device:1.Device.ManagementServer.UpgradesManaged"><em>ManagementServer.UpgradesManaged</em></a> parameter is <em>true</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.AvailableLanguages">AvailableLanguages</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Comma-separated list of user-interface languages that are available, where each language is specified according to RFC 3066 [<a href="#R.RFC3066">RFC3066</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.CurrentLanguage">CurrentLanguage</span></td>
<td>string(:16)</td>
<td>W</td>
<td>Current user-interface language, specified according to RFC 3066 [<a href="#R.RFC3066">RFC3066</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UserInterface.RemoteAccess.">Device.UserInterface.RemoteAccess.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains parameters relating to remotely accessing the CPE’s user interface.
Remote access is defined as any entity not of a local subnet attempting to connect to the CPE.
Remote access requires user authentication. To provide remote access authentication the CPE MUST support a &ldquo;User&rdquo; table with at least one instance that has &ldquo;RemoteAccessCapable&rdquo; set to <em>true</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.RemoteAccess.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables remotely accessing the CPE’s user interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.RemoteAccess.Port">Port</span></td>
<td>unsignedInt(:65535)</td>
<td>W</td>
<td>Destination TCP port required for remote access connection.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.RemoteAccess.SupportedProtocols">SupportedProtocols</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Indicates the protocols that are supported by the CPE for the purpose of remotely accessing the user interface.</p>

<p>Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.UserInterface.RemoteAccess.SupportedProtocols.HTTP"><em>HTTP</em></span> (As defined in [<a href="#R.RFC2616">RFC2616</a>])</li>
<li><span id="D.Device:1.Device.UserInterface.RemoteAccess.SupportedProtocols.HTTPS"><em>HTTPS</em></span> (As defined in [<a href="#R.RFC2818">RFC2818</a>])</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.RemoteAccess.Protocol">Protocol</span></td>
<td>string</td>
<td>W</td>
<td>The value MUST be a member of the list reported by the <a href="#D.Device:1.Device.UserInterface.RemoteAccess.SupportedProtocols"><em>SupportedProtocols</em></a> parameter. This is the protocol currently being used for remote access.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.">Device.UserInterface.LocalDisplay.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object describes how to remotely manage the initial positioning of a user interface on a device’s local display.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.Movable">Movable</span></td>
<td>boolean</td>
<td>W</td>
<td>Controls whether the user is allowed to change the GUI window position on the local CPE’s display.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.Resizable">Resizable</span></td>
<td>boolean</td>
<td>W</td>
<td>Controls whether the user is allowed to resize the GUI window on the local CPE’s display.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.PosX">PosX</span></td>
<td>int</td>
<td>W</td>
<td><p>The horizontal position of the User Interface’s top left corner within the local CPE’s display measured from the top left corner, expressed in <em>pixels</em>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.PosY">PosY</span></td>
<td>int</td>
<td>W</td>
<td><p>The vertical position of the User Interface’s top left corner within the local CPE’s display measured from the top left corner, expressed in <em>pixels</em>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.Width">Width</span></td>
<td>unsignedInt</td>
<td>W</td>
<td><p>The width of the user interface within the local CPE’s display, expressed in <em>pixels</em>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.Height">Height</span></td>
<td>unsignedInt</td>
<td>W</td>
<td><p>The height of the user interface within the local CPE’s display, expressed in <em>pixels</em>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.DisplayWidth">DisplayWidth</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The width of the local CPE’s display, expressed in <em>pixels</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UserInterface.LocalDisplay.DisplayHeight">DisplayHeight</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The height of the local CPE’s display, expressed in <em>pixels</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.">Device.LAN.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains parameters relating to IP-based LAN connectivity of a device.
This object relates only to IP-layer LAN capabilities. Lower-layer aspects of LAN connectivity are not considered part of the common data model defined in this specification.
For a device that contains multiple IP interfaces, the scope of this object is limited to the default IP interface. Data that might be associated with other interfaces is not considered part of the common data model defined in this specification.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.AddressingType">AddressingType</span></td>
<td>string</td>
<td>W</td>
<td><p>The method used to assign an address to this interface. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.LAN.AddressingType.DHCP"><em>DHCP</em></span></li>
<li><span id="D.Device:1.Device.LAN.AddressingType.Static"><em>Static</em></span>
The ability to modify this parameter is OPTIONAL.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPAddress">IPAddress</span></td>
<td><span title="IPAddress">string(:45)</span></td>
<td>W</td>
<td><p>[<a href="#T.IPAddress">IPAddress</a>] The current IP address assigned to this interface.
The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the <a href="#D.Device:1.Device.LAN.AddressingType"><em>AddressingType</em></a> is <a href="#D.Device:1.Device.LAN.AddressingType.DHCP"><em>DHCP</em></a>.</p>

<p>This parameter MUST always be included in Inform messages.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.SubnetMask">SubnetMask</span></td>
<td><span title="IPAddress">string(:45)</span></td>
<td>W</td>
<td>[<a href="#T.IPAddress">IPAddress</a>] The current subnet mask.
The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the <a href="#D.Device:1.Device.LAN.AddressingType"><em>AddressingType</em></a> is <a href="#D.Device:1.Device.LAN.AddressingType.DHCP"><em>DHCP</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DefaultGateway">DefaultGateway</span></td>
<td>string</td>
<td>W</td>
<td>The IP address of the current default gateway for this interface.
The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the <a href="#D.Device:1.Device.LAN.AddressingType"><em>AddressingType</em></a> is <a href="#D.Device:1.Device.LAN.AddressingType.DHCP"><em>DHCP</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DNSServers">DNSServers</span></td>
<td>string[](:256)</td>
<td>W</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Comma-separated list of IP address of the DNS servers for this interface.
The ability to modify this parameter is OPTIONAL, and this parameter cannot be modified if the <a href="#D.Device:1.Device.LAN.AddressingType"><em>AddressingType</em></a> is <a href="#D.Device:1.Device.LAN.AddressingType.DHCP"><em>DHCP</em></a>.
If this parameter is modifiable, the device MAY ignore any DNS servers beyond the first two in the list.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.MACAddress">MACAddress</span></td>
<td><span title="MACAddress">string(:17)</span></td>
<td>W</td>
<td>[<a href="#T.MACAddress">MACAddress</a>] The physical address of this interface. Writable only if <a href="#D.Device:1.Device.LAN.MACAddressOverride"><em>MACAddressOverride</em></a> is present and equal to <em>true</em>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.MACAddressOverride">MACAddressOverride</span></td>
<td>boolean</td>
<td>W</td>
<td>Whether the value of MACAddress parameter can be overridden.

<ul>
<li>When <em>true</em>, <a href="#D.Device:1.Device.LAN.MACAddress"><em>MACAddress</em></a> is writable.</li>
<li>When <em>false</em>, <a href="#D.Device:1.Device.LAN.MACAddress"><em>MACAddress</em></a> is not writable, and the default MAC address assigned by the device SHOULD be restored.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DHCPOptionNumberOfEntries">DHCPOptionNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Number of entries in the DHCP option table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.DHCPOption.">Device.LAN.DHCPOption.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>W</td>
<td>This object is for configuration of DHCP options. Each instance of this object represents a DHCP option to be included by the DHCP client in client requests. The DHCP client MAY include any other options not specified in this table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DHCPOption.Request">Request</span></td>
<td>boolean</td>
<td>W</td>
<td>Whether this entry represents a request to the DHCP server, or a value to be sent by the DHCP client.

<ul>
<li>When <em>true</em>, this entry represents a request. In this case, the DHCP client MUST include the specified <a href="#D.Device:1.Device.LAN.DHCPOption.Tag"><em>Tag</em></a> in the Parameter Request List, as defined in RFC 2132. The <a href="#D.Device:1.Device.LAN.DHCPOption.Value"><em>Value</em></a> parameter is ignored in this case.</li>
<li>When <em>false</em>, this entry represents a value to be sent by the DHCP client. In this case, the DHCP client MUST include a DHCP option formed from the <a href="#D.Device:1.Device.LAN.DHCPOption.Tag"><em>Tag</em></a> and <a href="#D.Device:1.Device.LAN.DHCPOption.Value"><em>Value</em></a> parameters (with the Length derived from the length of the <a href="#D.Device:1.Device.LAN.DHCPOption.Value"><em>Value</em></a> parameter).</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DHCPOption.Tag">Tag</span></td>
<td>unsignedInt(1:254)</td>
<td>W</td>
<td>Tag of the DHCP option as defined in RFC 2132.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.DHCPOption.Value">Value</span></td>
<td>base64(:255)</td>
<td>W</td>
<td>Base64 encoded octet string to be used as the Value of the DHCP option if <a href="#D.Device:1.Device.LAN.DHCPOption.Request"><em>Request</em></a> is <em>false</em>.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.Stats.">Device.LAN.Stats.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains statistics for the default IP interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.ConnectionUpTime">ConnectionUpTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The time in seconds that this IP interface has been connected.</p>

<ul>
<li>If the IP interface is using DHCP, this is the time that the DHCP client has been only in the Bound or Renewing states and the lower-layer interface has continuously maintained a link.</li>
<li>If the IP interface is using static addressing, this is the time that the lower-layer interface has continuously maintained a link.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.TotalBytesSent">TotalBytesSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes sent over this interface since the device was last restarted as specified in <a href="#D.Device:1.Device.DeviceInfo.UpTime"><em>DeviceInfo.UpTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.TotalBytesReceived">TotalBytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes received over this interface since the device was last restarted as specified in <a href="#D.Device:1.Device.DeviceInfo.UpTime"><em>DeviceInfo.UpTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.TotalPacketsSent">TotalPacketsSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets sent over this interface since the device was last restarted as specified in <a href="#D.Device:1.Device.DeviceInfo.UpTime"><em>DeviceInfo.UpTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.TotalPacketsReceived">TotalPacketsReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets received over this interface since the device was last restarted as specified in <a href="#D.Device:1.Device.DeviceInfo.UpTime"><em>DeviceInfo.UpTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.CurrentDayInterval">CurrentDayInterval</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Number of seconds since the beginning of the period used for collection of CurrentDay statistics.
The device MAY align the beginning of each CurrentDay interval with days in the UTC time zone, but does not need to do so.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.CurrentDayBytesSent">CurrentDayBytesSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes sent over this interface since the beginning of the current-day interval as specified by <a href="#D.Device:1.Device.LAN.Stats.CurrentDayInterval"><em>CurrentDayInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.CurrentDayBytesReceived">CurrentDayBytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes received over this interface since the beginning of the current-day interval as specified by <a href="#D.Device:1.Device.LAN.Stats.CurrentDayInterval"><em>CurrentDayInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.CurrentDayPacketsSent">CurrentDayPacketsSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets sent over this interface since the beginning of the current-day interval as specified by <a href="#D.Device:1.Device.LAN.Stats.CurrentDayInterval"><em>CurrentDayInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.CurrentDayPacketsReceived">CurrentDayPacketsReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets received over this interface since the beginning of the current-day interval as specified by <a href="#D.Device:1.Device.LAN.Stats.CurrentDayInterval"><em>CurrentDayInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.QuarterHourInterval">QuarterHourInterval</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Number of seconds since the beginning of the period used for collection of QuarterHour statistics.
The device MAY align the beginning of each QuarterHour interval with real-time quarter-hour intervals, but does not need to do so.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.QuarterHourBytesSent">QuarterHourBytesSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes sent over this interface since the beginning of the quarter-hour interval as specified by <a href="#D.Device:1.Device.LAN.Stats.QuarterHourInterval"><em>QuarterHourInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.QuarterHourBytesReceived">QuarterHourBytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP payload bytes received over this interface since the beginning of the quarter-hour interval as specified by <a href="#D.Device:1.Device.LAN.Stats.QuarterHourInterval"><em>QuarterHourInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.QuarterHourPacketsSent">QuarterHourPacketsSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets sent over this interface since the beginning of the quarter-hour interval as specified by <a href="#D.Device:1.Device.LAN.Stats.QuarterHourInterval"><em>QuarterHourInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.Stats.QuarterHourPacketsReceived">QuarterHourPacketsReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Total number of IP packets received over this interface since the beginning of the quarter-hour interval as specified by <a href="#D.Device:1.Device.LAN.Stats.QuarterHourInterval"><em>QuarterHourInterval</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.">Device.LAN.IPPingDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines access to an IP-layer ping test for the default IP interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.None"><em>None</em></span></li>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Complete"><em>Complete</em></span></li>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Error_CannotResolveHostName"><em>Error_CannotResolveHostName</em></span></li>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Error_Internal"><em>Error_Internal</em></span></li>
<li><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Error_Other"><em>Error_Other</em></span>
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the <em>DiagnosticsState</em> to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a> (if the test completed successfully), or one of the <em>Error</em> values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code <em>8 DIAGNOSTICS COMPLETE</em> in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to <a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.Host">Host</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Host name or address of the host to ping.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.NumberOfRepetitions">NumberOfRepetitions</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>Number of repetitions of the ping test to perform before reporting the results.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.Timeout">Timeout</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>Timeout in milliseconds for the ping test.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DataBlockSize">DataBlockSize</span></td>
<td>unsignedInt(1:65535)</td>
<td>W</td>
<td>Size of the data block in bytes to be sent for each ping.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.DSCP">DSCP</span></td>
<td>unsignedInt(0:63)</td>
<td>W</td>
<td>DiffServ codepoint to be used for the test packets. By default the CPE SHOULD set this value to zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.SuccessCount">SuccessCount</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the number of successful pings (those in which a successful response was received prior to the timeout) in the most recent ping test.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.FailureCount">FailureCount</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the number of failed pings in the most recent ping test.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.AverageResponseTime">AverageResponseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the average response time in milliseconds over all repetitions with successful responses of the most recent ping test. If there were no successful responses, this value MUST be zero.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.MinimumResponseTime">MinimumResponseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the minimum response time in milliseconds over all repetitions with successful responses of the most recent ping test. If there were no successful responses, this value MUST be zero.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.IPPingDiagnostics.MaximumResponseTime">MaximumResponseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the maximum response time in milliseconds over all repetitions with successful responses of the most recent ping test. If there were no successful responses, this value MUST be zero.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.">Device.LAN.TraceRouteDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object is defines access to an IP-layer trace-route test for the default IP interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.None"><em>None</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Complete"><em>Complete</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Error_CannotResolveHostName"><em>Error_CannotResolveHostName</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Error_MaxHopCountExceeded"><em>Error_MaxHopCountExceeded</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Error_Internal"><em>Error_Internal</em></span></li>
<li><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Error_Other"><em>Error_Other</em></span>
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the <em>DiagnosticsState</em> to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a> (if the test completed successfully), or one of the <em>Error</em> values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code <em>8 DIAGNOSTICS COMPLETE</em> in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to <a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.Host">Host</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Host name or address of the host to find a route to.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.Timeout">Timeout</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>Timeout in milliseconds for the trace route test.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DataBlockSize">DataBlockSize</span></td>
<td>unsignedInt(1:65535)</td>
<td>W</td>
<td>Size of the data block in bytes to be sent for each trace route.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.MaxHopCount">MaxHopCount</span></td>
<td>unsignedInt(1:64)</td>
<td>W</td>
<td>The maximum number of hop used in outgoing probe packets (max TTL). The default is 30 hops.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.DSCP">DSCP</span></td>
<td>unsignedInt(0:63)</td>
<td>W</td>
<td>DiffServ codepoint to be used for the test packets. By default the CPE SHOULD set this value to zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.ResponseTime">ResponseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the response time in milliseconds the most recent trace route test. If a route could not be determined, this value MUST be zero.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.NumberOfRouteHops">NumberOfRouteHops</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Result parameter indicating the number of hops within the discovered route. If a route could not be determined, this value MUST be zero.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.">Device.LAN.TraceRouteDiagnostics.RouteHops.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td>Result parameter indicating the components of the discovered route. If a route could not be determined, there will be no instances of this object.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.HopHost">HopHost</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>Result parameter indicating the Host Name or IP Address of a hop along the discovered route.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Capabilities.">Device.Capabilities.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>The capabilities of the device. This is a constant read-only object, meaning that only a firmware upgrade will cause these values to be altered.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.">Device.Capabilities.PerformanceDiagnostic.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>The capabilities of the Performance Diagnostics (<em>DownloadDiagnostics</em> and <em>UploadDiagnostics</em>) for the device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.DownloadTransports">DownloadTransports</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Supported <em>DownloadDiagnostics</em> transport protocols for a CPE device.</p>

<p>Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.DownloadTransports.HTTP"><em>HTTP</em></span></li>
<li><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.DownloadTransports.FTP"><em>FTP</em></span> (OPTIONAL)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.UploadTransports">UploadTransports</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Supported <em>UploadDiagnostics</em> transport protocols for a CPE device.</p>

<p>Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.UploadTransports.HTTP"><em>HTTP</em></span></li>
<li><span id="D.Device:1.Device.Capabilities.PerformanceDiagnostic.UploadTransports.FTP"><em>FTP</em></span> (OPTIONAL)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DownloadDiagnostics.">Device.DownloadDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines the diagnostics configuration for a HTTP and FTP DownloadDiagnostics Test.
Files received in the DownloadDiagnostics do not require file storage on the CPE device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicate the availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.None"><em>None</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_InitConnectionFailed"><em>Error_InitConnectionFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_NoResponse"><em>Error_NoResponse</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_TransferFailed"><em>Error_TransferFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_PasswordRequestFailed"><em>Error_PasswordRequestFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_LoginFailed"><em>Error_LoginFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_NoTransferMode"><em>Error_NoTransferMode</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_NoPASV"><em>Error_NoPASV</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_IncorrectSize"><em>Error_IncorrectSize</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Error_Timeout"><em>Error_Timeout</em></span> (READONLY)
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the <em>DiagnosticsState</em> to <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></a> (if the test completed successfully), or one of the <em>Error</em> values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code <em>8 DIAGNOSTICS COMPLETE</em> in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to Requested (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.Interface">Interface</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The value MUST be the Path Name of the IP-layer interface over which the test is to be performed.
The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.
If an empty string is specified, the CPE MUST use the default routing interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.DownloadURL">DownloadURL</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], for the CPE to perform the download on. This parameter MUST be in the form of a valid HTTP [<a href="#R.RFC2616">RFC2616</a>] or FTP [<a href="#R.RFC959">RFC959</a>] URL.

<ul>
<li>When using FTP transport, FTP binary transfer MUST be used.</li>
<li>When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used.</li>
<li>When using HTTP transport the HTTP Authentication MUST NOT be used.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.DSCP">DSCP</span></td>
<td>unsignedInt(0:63)</td>
<td>W</td>
<td>The DiffServ code point for marking packets transmitted in the test.
The default value SHOULD be zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.EthernetPriority">EthernetPriority</span></td>
<td>unsignedInt(0:7)</td>
<td>W</td>
<td>Ethernet priority code for marking packets transmitted in the test (if applicable).
The default value SHOULD be zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.ROMTime">ROMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Request time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the client sends the GET command.</li>
<li>For FTP this is the time at which the client sends the RTRV command.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.BOMTime">BOMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Begin of transmission time in UTC, which MUST be specified to microsecond precision
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the first data packet is received.</li>
<li>For FTP this is the time at which the client receives the first data packet on the data connection.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.EOMTime">EOMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>End of transmission in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the last data packet is received.</li>
<li>For FTP this is the time at which the client receives the last packet on the data connection.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.TestBytesReceived">TestBytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The test traffic received in bytes during the FTP/HTTP transaction including FTP/HTTP headers, between <a href="#D.Device:1.Device.DownloadDiagnostics.BOMTime"><em>BOMTime</em></a> and <a href="#D.Device:1.Device.DownloadDiagnostics.EOMTime"><em>EOMTime</em></a>,</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.TotalBytesReceived">TotalBytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The total number of bytes received on the Interface between <a href="#D.Device:1.Device.DownloadDiagnostics.BOMTime"><em>BOMTime</em></a> and <a href="#D.Device:1.Device.DownloadDiagnostics.EOMTime"><em>EOMTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Request time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the TCP socket open (SYN) was sent for the HTTP connection.</li>
<li>For FTP this is the time at which the TCP socket open (SYN) was sent for the data connection.
Note: Interval of 1 microsecond SHOULD be supported.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Response time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the TCP ACK to the socket opening the HTTP connection was received.</li>
<li>For FTP this is the time at which the TCP ACK to the socket opening the data connection was received.
Note: Interval of 1 microsecond SHOULD be supported.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UploadDiagnostics.">Device.UploadDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines the diagnostics configuration for a HTTP or FTP UploadDiagnostics test.
Files sent by the UploadDiagnostics do not require file storage on the CPE device, and MAY be an arbitrary stream of bytes.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicate the availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.None"><em>None</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_InitConnectionFailed"><em>Error_InitConnectionFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoResponse"><em>Error_NoResponse</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_PasswordRequestFailed"><em>Error_PasswordRequestFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_LoginFailed"><em>Error_LoginFailed</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoTransferMode"><em>Error_NoTransferMode</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoPASV"><em>Error_NoPASV</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoCWD"><em>Error_NoCWD</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoSTOR"><em>Error_NoSTOR</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Error_NoTransferComplete"><em>Error_NoTransferComplete</em></span> (READONLY)
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the <em>DiagnosticsState</em> to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></a> (if the test completed successfully), or one of the <em>Error</em> values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Completed"><em>Completed</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code <em>8 DIAGNOSTICS COMPLETE</em> in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to <a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.Interface">Interface</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The value MUST be the Path Name of the IP-layer interface over which the test is to be performed.
The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.
If an empty string is specified, the CPE MUST use the default routing interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.UploadURL">UploadURL</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The URL, as defined in [<a href="#R.RFC3986">RFC3986</a>], for the CPE to Upload to. This parameter MUST be in the form of a valid HTTP [<a href="#R.RFC2616">RFC2616</a>] or FTP [<a href="#R.RFC959">RFC959</a>] URL.

<ul>
<li>When using FTP transport, FTP binary transfer MUST be used.</li>
<li>When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used.</li>
<li>When using HTTP transport the HTTP Authentication MUST NOT be used.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.DSCP">DSCP</span></td>
<td>unsignedInt(0:63)</td>
<td>W</td>
<td>DiffServ code point for marking packets transmitted in the test.
The default value SHOULD be zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.EthernetPriority">EthernetPriority</span></td>
<td>unsignedInt(0:7)</td>
<td>W</td>
<td>Ethernet priority code for marking packets transmitted in the test (if applicable).
The default value SHOULD be zero.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.TestFileLength">TestFileLength</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The size of the file (in bytes) to be uploaded to the server.
The CPE MUST insure the appropriate number of bytes are sent.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.ROMTime">ROMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Request time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the client sends the PUT command</li>
<li>For FTP this is the time at which the STOR command is sent.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.BOMTime">BOMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Begin of transmission time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the first data packet is sent.</li>
<li>For FTP this is the time at which the client receives the ready for transfer notification.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.EOMTime">EOMTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>End of transmission in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time when the HTTP successful response code is received.</li>
<li>For FTP this is the time when the client receives a transfer complete.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.TotalBytesSent">TotalBytesSent</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The total number of bytes sent on the Interface between <a href="#D.Device:1.Device.UploadDiagnostics.BOMTime"><em>BOMTime</em></a> and <a href="#D.Device:1.Device.UploadDiagnostics.EOMTime"><em>EOMTime</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Request time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the time at which the TCP socket open (SYN) was sent for the HTTP connection.</li>
<li>For FTP this is the time at which the TCP socket open (SYN) was sent for the data connection
Note: Interval of 1 microsecond SHOULD be supported.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UploadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Response time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456</p>

<ul>
<li>For HTTP this is the Time at which the TCP ACK to the socket opening the HTTP connection was received.</li>
<li>For FTP this is the Time at which the TCP ACK to the socket opening the Data connection was received.
Note: Interval of 1 microsecond SHOULD be supported.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UDPEchoConfig.">Device.UDPEchoConfig.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object allows the CPE to be configured to perform the UDP Echo Service defined in [<a href="#R.RFC862">RFC862</a>] and UDP Echo Plus Service defined in [<a href="#R.TR-143">Appendix A.1/TR-143</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>MUST be enabled to receive UDP echo. When enabled from a disabled state all related timestamps, statistics and UDP Echo Plus counters are cleared.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.Interface">Interface</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The value MUST be the Path Name of IP-layer interface over which the CPE MUST listen and receive UDP echo requests on.
The value of this parameter MUST be either a valid interface or an empty string. An attempt to set this parameter to a different value MUST be rejected as an invalid parameter value.
If an empty string is specified, the CPE MUST listen and receive UDP echo requests on all interfaces.
Note: Interfaces behind a NAT MAY require port forwarding rules configured in the Gateway to enable receiving the UDP packets.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.SourceIPAddress">SourceIPAddress</span></td>
<td><span title="IPAddress">string(:45)</span></td>
<td>W</td>
<td>[<a href="#T.IPAddress">IPAddress</a>] The Source IP address of the UDP echo packet. The CPE MUST only respond to a UDP echo from this source IP address.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.UDPPort">UDPPort</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The UDP port on which the UDP server MUST listen and respond to UDP echo requests.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.EchoPlusEnabled">EchoPlusEnabled</span></td>
<td>boolean</td>
<td>W</td>
<td>If <em>true</em> the CPE will perform necessary packet processing for UDP Echo Plus packets.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.EchoPlusSupported">EchoPlusSupported</span></td>
<td>boolean</td>
<td>R</td>
<td><em>true</em> if UDP Echo Plus is supported.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.PacketsReceived">PacketsReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Incremented upon each valid UDP echo packet received.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.PacketsResponded">PacketsResponded</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Incremented for each UDP echo response sent.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.BytesReceived">BytesReceived</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The number of UDP received bytes including payload and UDP header after the UDPEchoConfig is enabled.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.BytesResponded">BytesResponded</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The number of UDP responded bytes, including payload and UDP header sent after the UDPEchoConfig is enabled.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.TimeFirstPacketReceived">TimeFirstPacketReceived</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456,
The time that the server receives the first UDP echo packet after the UDPEchoConfig is enabled.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UDPEchoConfig.TimeLastPacketReceived">TimeLastPacketReceived</span></td>
<td>dateTime</td>
<td>R</td>
<td><p>Time in UTC, which MUST be specified to microsecond precision.
For example: 2008-04-09T15:01:05.123456
The time that the server receives the most recent UDP echo packet.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.User.">Device.User.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>W</td>
<td><p>This object contains parameters relating to the user characteristics.</p>

<p>At most one enabled entry in this table can exist with a given value for <a href="#D.Device:1.Device.User.Username"><em>Username</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.User.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/disables this user object instance.
If the User being configured is currently accessing the device then a disable MUST apply to the next user session and the current user session MUST NOT be abruptly terminated.</td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.User.RemoteAccessCapable">RemoteAccessCapable</span></td>
<td>boolean</td>
<td>W</td>
<td>Allows this user to remotely access the UserInterface via the mechanism defined in <a href="#D.Device:1.Device.UserInterface.RemoteAccess."><em>UserInterface.RemoteAccess.</em></a></td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.User.Username">Username</span></td>
<td>string(:64)</td>
<td>W</td>
<td>Name of the current user. MUST NOT be an empty string for an enabled entry.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.User.Password">Password</span></td>
<td>string(:64)</td>
<td>W</td>
<td><p>The user’s password.</p>

<p>When read, this parameter returns an empty string, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.User.Language">Language</span></td>
<td>string(:16)</td>
<td>W</td>
<td>String describing the default language for the local configuration interface, specified according to [<a href="#R.RFC3066">RFC3066</a>].
If an empty string, <a href="#D.Device:1.Device.UserInterface.CurrentLanguage"><em>UserInterface.CurrentLanguage</em></a> is used.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.">Device.UPnP.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains all UPnP related objects and parameters including Device and Discovery related objects and parameters.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Device.">Device.UPnP.Device.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines the UPnP devices and UPnP services that are implemented by the CPE.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPMediaServer">UPnPMediaServer</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP Media Server.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPMediaRenderer">UPnPMediaRenderer</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP Media Renderer.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPWLANAccessPoint">UPnPWLANAccessPoint</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP Wireless Access Point.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPQoSDevice">UPnPQoSDevice </span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP QoS Device.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPQoSPolicyHolder">UPnPQoSPolicyHolder</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP QoS Policy Holder.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPIGD">UPnPIGD</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP IGD.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPDMBasicMgmt">UPnPDMBasicMgmt</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP-DM Basic Management.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPDMConfigurationMgmt">UPnPDMConfigurationMgmt</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP-DM Configuration Management.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.UPnPDMSoftwareMgmt">UPnPDMSoftwareMgmt</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables/Disables UPnP-DM Software Management.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.">Device.UPnP.Device.Capabilities.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines what UPnP capabilities this device has.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPArchitecture">UPnPArchitecture</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the major version of the supported UPnP architecture.
If UPnP 1.1 is supported the value is 1. If UPnP 2.0 is supported the value is 2.
A value of 0 indicates no UPnP support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPArchitectureMinorVer">UPnPArchitectureMinorVer</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the minor version of the supported UPnP architecture.
If UPnP 1.1 is supported the value is 1. If UPnP 2.0 is supported the value is 0.
If <a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPArchitecture"><em>UPnPArchitecture</em></a> is 0 then this parameter SHOULD be ignored.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPMediaServer">UPnPMediaServer</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Media Server.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPMediaRenderer">UPnPMediaRenderer</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Media Renderer.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPWLANAccessPoint">UPnPWLANAccessPoint</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Wireless Access Point.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPBasicDevice">UPnPBasicDevice</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Basic Device.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPQoSDevice">UPnPQoSDevice</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Qos Device.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPQoSPolicyHolder">UPnPQoSPolicyHolder</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP Qos Policy Holder.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPIGD">UPnPIGD</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP IGD.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPDMBasicMgmt">UPnPDMBasicMgmt</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP-DM Basic Management.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPDMConfigurationMgmt">UPnPDMConfigurationMgmt</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP-DM Configuration Management.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Device.Capabilities.UPnPDMSoftwareMgmt">UPnPDMSoftwareMgmt</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Numeric value indicating the supported revision for UPnP-DM Software Management.
A value of 0 indicates no support.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Discovery.">Device.UPnP.Discovery.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>UPnP [<a href="#R.UPnP-DAv1">UPnP-DAv1</a>] SSDP discovered root devices, embedded devices and embedded services.
The CPE MAY, but need not, retain some or all of the information in this object across reboots.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDeviceNumberOfEntries">RootDeviceNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.UPnP.Discovery.RootDevice."><em>RootDevice</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.DeviceNumberOfEntries">DeviceNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.UPnP.Discovery.Device."><em>Device</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.ServiceNumberOfEntries">ServiceNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.UPnP.Discovery.Service."><em>Service</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.">Device.UPnP.Discovery.RootDevice.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>UPnP root device table. This table contains an entry for each UPnP root device that has been discovered via SSDP.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.UUID"><em>UUID</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of the UPnP root device. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Status.LeaseActive"><em>LeaseActive</em></span> (Device is active and UPnP lease has not expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Status.LeaseExpired"><em>LeaseExpired</em></span> (Device is inactive because UPnP lease has expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Status.ByebyeReceived"><em>ByebyeReceived</em></span> (Device is inactive because byebye message was received)
The ability to list inactive UPnP root devices is OPTIONAL. The length of time an inactive device remains listed in this table is a local matter to the CPE.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.UUID">UUID</span></td>
<td>string(:36)</td>
<td>R</td>
<td><p>This UPnP root device’s UUID (Universally Unique IDentifier) [<a href="#R.RFC4122">RFC4122</a>], extracted from any of its USN (Unique Service Name) headers. This is a 36-byte string that uniquely identifies the device, the following is an example:</p>

<blockquote><em>02c29d2a-dbfd-2d91-99c9-306d537e9856</em></blockquote>

<p>Possible patterns:</p>

<ul>
<li><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.UUID.0-9A-Fa-f8-0-9A-Fa-f4-30-9A-Fa-f12"><code>[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}</code></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.USN">USN</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the USN (Unique Service Name) header for this UPnP root device. Three discovery messages are sent for root devices, and this SHOULD be the value of the USN header of the following form:</p>

<blockquote><em>uuid:device-UUID::urn:domain-name:device:deviceType:v</em>
SSDP is an unreliable protocol and it is possible that no discovery message containing the USN header of the above form was ever received. If so, one of the other two forms MAY be used:</blockquote>

<blockquote><em>uuid:device-UUID::upnp:rootdevice</em></blockquote>

<blockquote><em>uuid:device-UUID</em> (for root device UUID)</blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.LeaseTime">LeaseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The UPnP root device lease time in <em>seconds</em>, extracted from the CACHE-CONTROL header.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Location">Location</span></td>
<td>string(:256)</td>
<td>R</td>
<td>The value of the LOCATION header for this UPnP root device, which is the URL of the root device’s DDD (Device Description Document).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Server">Server</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the SERVER header for this UPnP root device, which is a string of the following form:</p>

<blockquote><em>OS/version UPnP/udaversion product/version</em>
where <strong>UPnP</strong> is a literal string, <strong>udaversion</strong> is the version of the UPnP Device Architecture.</blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.RootDevice.Host">Host</span></td>
<td>string(:256)[](:1024)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 1024) of strings (maximum number of characters per item 256). Indicates the full path names of all Host table entries, whether active or inactive, that correspond to this UPnP root device.
As such entries are added to or removed from the Host tables, the value of this parameter MUST be updated accordingly.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.">Device.UPnP.Discovery.Device.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>UPnP embedded device table. This table contains an entry for each UPnP embedded device that has been discovered via SSDP.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.UPnP.Discovery.Device.UUID"><em>UUID</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of the UPnP embedded device. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.UPnP.Discovery.Device.Status.LeaseActive"><em>LeaseActive</em></span> (Device is active and UPnP lease has not expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.Device.Status.LeaseExpired"><em>LeaseExpired</em></span> (Device is inactive because UPnP lease has expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.Device.Status.ByebyeReceived"><em>ByebyeReceived</em></span> (Device is inactive because byebye message was received)
The ability to list inactive UPnP embedded devices is OPTIONAL. The length of time an inactive device remains listed in this table is a local matter to the CPE.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.UUID">UUID</span></td>
<td>string(:36)</td>
<td>R</td>
<td><p>This UPnP embedded device’s UUID (Universally Unique IDentifier) [<a href="#R.RFC4122">RFC4122</a>], extracted from any of its USN (Unique Service Name) headers. This is a 36-byte string that uniquely identifies the device, the following is an example:</p>

<blockquote><em>02c29d2a-dbfd-2d91-99c9-306d537e9856</em></blockquote>

<p>Possible patterns:</p>

<ul>
<li><span id="D.Device:1.Device.UPnP.Discovery.Device.UUID.0-9A-Fa-f8-0-9A-Fa-f4-30-9A-Fa-f12"><code>[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}</code></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.USN">USN</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the USN (Unique Service Name) header for this UPnP embedded device. Two discovery messages are sent for embedded devices, and this SHOULD be the value of the USN header of the following form:</p>

<blockquote><em>uuid:device-UUID::urn:domain-name:device:deviceType:v</em>
SSDP is an unreliable protocol and it is possible that no discovery message containing the USN header of the above form was ever received. If so, the other form MAY be used:</blockquote>

<blockquote><em>uuid:device-UUID</em></blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.LeaseTime">LeaseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The UPnP embedded device lease time in <em>seconds</em>, extracted from the CACHE-CONTROL header.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.Location">Location</span></td>
<td>string(:256)</td>
<td>R</td>
<td>The value of the LOCATION header for this UPnP embedded device, which is the URL of the root device’s DDD (Device Description Document).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.Server">Server</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the SERVER header for this UPnP embedded device, which is a string of the following form:</p>

<blockquote><em>OS/version UPnP/udaversion product/version</em>
where <strong>UPnP</strong> is a literal string, <strong>udaversion</strong> is the version of the UPnP Device Architecture.</blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Device.Host">Host</span></td>
<td>string(:256)[](:1024)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 1024) of strings (maximum number of characters per item 256). Indicates the full path names of all Host table entries, whether active or inactive, that correspond to this UPnP embedded device.
As such entries are added to or removed from the Host tables, the value of this parameter MUST be updated accordingly.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.">Device.UPnP.Discovery.Service.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>UPnP embedded service table. This table contains an entry for each UPnP embedded service that has been discovered via SSDP.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.UPnP.Discovery.Service.USN"><em>USN</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of the UPnP embedded service. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.UPnP.Discovery.Service.Status.LeaseActive"><em>LeaseActive</em></span> (Service is active and UPnP lease has not expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.Service.Status.LeaseExpired"><em>LeaseExpired</em></span> (Service is inactive because UPnP lease has expired)</li>
<li><span id="D.Device:1.Device.UPnP.Discovery.Service.Status.ByebyeReceived"><em>ByebyeReceived</em></span> (Service is inactive because byebye message was received)
The ability to list inactive UPnP embedded services is OPTIONAL. The length of time an inactive service remains listed in this table is a local matter to the CPE.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.USN">USN</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the USN (Unique Service Name) header for this UPnP embedded service. This is of the following form:</p>

<blockquote><em>uuid:device-UUID::urn:domain-name:service:serviceType:v</em></blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.LeaseTime">LeaseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The UPnP embedded service lease time in <em>seconds</em>, extracted from the CACHE-CONTROL header.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.Location">Location</span></td>
<td>string(:256)</td>
<td>R</td>
<td>The value of the LOCATION header for this UPnP embedded service, which is the URL of the root device’s DDD (Device Description Document).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.Server">Server</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>The value of the SERVER header for this UPnP embedded service, which is a string of the following form:</p>

<blockquote><em>OS/version UPnP/udaversion product/version</em>
where <strong>UPnP</strong> is a literal string, <strong>udaversion</strong> is the version of the UPnP Device Architecture.</blockquote></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.UPnP.Discovery.Service.Host">Host</span></td>
<td>string(:256)[](:1024)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 1024) of strings (maximum number of characters per item 256). Indicates the full path names of all Host table entries, whether active or inactive, that correspond to this UPnP embedded service.
As such entries are added to or removed from the Host tables, the value of this parameter MUST be updated accordingly.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DLNA.">Device.DLNA.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains all DLNA related objects and parameters.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DLNA.Capabilities.">Device.DLNA.Capabilities.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>DLNA capabilities.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.HNDDeviceClass">HNDDeviceClass</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the supported DLNA Home Network Device Classes [<a href="#R.DLNA-NDIG">Table 4-1/DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.DeviceCapability">DeviceCapability</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the supported DLNA Device Capabilities [<a href="#R.DLNA-NDIG">Table 4-2/DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.HIDDeviceClass">HIDDeviceClass</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the supported DLNA Home Infrastructure Device Classes [<a href="#R.DLNA-NDIG">Table 4-4/DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.ImageClassProfileID">ImageClassProfileID</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the DLNA Image Class Profile IDs supported by this device, from Tables 5-2 and 5-3 of [<a href="#R.DLNA-NDIG">DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.AudioClassProfileID">AudioClassProfileID</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the DLNA Audio Class Profile IDs supported by this device, from Tables 5-4 through 5-10 of [<a href="#R.DLNA-NDIG">DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.AVClassProfileID">AVClassProfileID</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the DLNA AV Class Profile IDs supported by this device, from Tables 5-11 through 5-15 of [<a href="#R.DLNA-NDIG">DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.MediaCollectionProfileID">MediaCollectionProfileID</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the DLNA Media Collection Profile IDs supported by this device [<a href="#R.DLNA-NDIG">Table 5-16/DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DLNA.Capabilities.PrinterClassProfileID">PrinterClassProfileID</span></td>
<td>string[](:256)</td>
<td>R</td>
<td>Comma-separated list (maximum number of characters 256) of strings. Indicates the DLNA Printer Class Profile IDs supported by this device [<a href="#R.DLNA-NDIG">Table 5-17/DLNA-NDIG</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SmartCardReader.">Device.SmartCardReader.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>This object describes the characteristics of the smart card reader.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.SmartCardReader.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables this smart card reader.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Indicates the status of this smart card reader.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SmartCardReader.Status.Disabled"><em>Disabled</em></span></li>
<li><span id="D.Device:1.Device.SmartCardReader.Status.Enabled"><em>Enabled</em></span> (Indicates the smart card reader is enabled and functioning properly)</li>
<li><span id="D.Device:1.Device.SmartCardReader.Status.Error"><em>Error</em></span> (Indicates the smart card reader is enabled and not functioning properly)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.Name">Name</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Human-readable name associated with this smart card reader.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.Reset">Reset</span></td>
<td>boolean</td>
<td>W</td>
<td><p>When set to <em>true</em>, resets the SmartCard Reader and the associated SmartCard.</p>

<p>When read, this parameter returns <em>false</em>, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.ResetTime">ResetTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The time at which this SmartCard Reader was reset.
Reset can be caused by:

<ul>
<li><a href="#D.Device:1.Device.SmartCardReader.Status"><em>Status</em></a> transition from Disabled to Enabled</li>
<li><a href="#D.Device:1.Device.SmartCardReader.Reset"><em>Reset</em></a> set to <em>true</em>.</li>
<li>An internal reset of the SmartCard Reader (including a reboot of the device).
Unknown Time value indicates that this SmartCard Reader has never been reset, which can only happen if it has never been enabled.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.DecryptionFailedCounter">DecryptionFailedCounter</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Counter incremented once each time decryption cannot be carried out.
This counter relates to the smart card reader, not to the smart card itself, i.e. it is reset when the <a href="#D.Device:1.Device.SmartCardReader.Reset"><em>Reset</em></a> parameter is used and not when a Smart Card is inserted or removed.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.DecryptionFailedNoKeyCounter">DecryptionFailedNoKeyCounter</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Counter incremented once each time the key is not available to decrypt it. This is a subset of the more general <a href="#D.Device:1.Device.SmartCardReader.DecryptionFailedCounter"><em>DecryptionFailedCounter</em></a> within the same object and thus will always be less than that parameter.
This counter relates to the smart card reader, not to the smart card itself, i.e. it is reset when the <a href="#D.Device:1.Device.SmartCardReader.Reset"><em>Reset</em></a> parameter is used and not when a Smart Card is inserted or removed.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.">Device.SmartCardReader.{i}.SmartCard.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Status of currently associated smart card.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Status of the Smart Card.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Status.None"><em>None</em></span> (Indicates that no Smart Card is inserted)</li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Status.Running"><em>Running</em></span> (Indicates a Smart Card is present and working normally)</li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Status.Error"><em>Error</em></span> (Indicates the Smart Card is present and in an error condition)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.Type">Type</span></td>
<td>string</td>
<td>R</td>
<td><p>Smart Card Type. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Type.CA"><em>CA</em></span></li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Type.DRM"><em>DRM</em></span></li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Type.UICC"><em>UICC</em></span>
Vendors can extend the enumerated values with vendor specific extensions, in which case the rules outlined in [<a href="#R.TR-106a2">Section 3.3/TR-106a2</a>] MUST be adhered to.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.Application">Application</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Indicates Smart Card Application(s). <em>Application</em> is only relevant when <a href="#D.Device:1.Device.SmartCardReader.SmartCard.Type"><em>Type</em></a> has a value of UICC, otherwise it is an empty string. Each list item is an enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Application.SIM"><em>SIM</em></span></li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Application.USIM"><em>USIM</em></span></li>
<li><span id="D.Device:1.Device.SmartCardReader.SmartCard.Application.ISIM"><em>ISIM</em></span>
Vendors can extend the enumerated values with vendor specific extensions, in which case the rules outlined in [<a href="#R.TR-106a2">Section 3.3/TR-106a2</a>] MUST be adhered to.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.SerialNumber">SerialNumber</span></td>
<td>string(:256)</td>
<td>R</td>
<td>The Smart Card Serial Number or an empty string if the Smart Card serial Number is not available, e.g. in the case of IPTV due to restrictions of the Service Delivery Platform.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SmartCardReader.SmartCard.ATR">ATR</span></td>
<td>string(:1024)</td>
<td>R</td>
<td>The Smart Card answer to a reset action. Issued by the Smart Card upon reset.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SelfTestDiagnostics.">Device.SelfTestDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This diagnostics test is vendor-specific and MAY include testing hardware, software, and/or firmware.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.None"><em>None</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Complete"><em>Complete</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Error_Internal"><em>Error_Internal</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Error_Other"><em>Error_Other</em></span> (READONLY)
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the DiagnosticsState to Requested.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a> (if the test completed successfully), or one of the Error values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code &ldquo;8 DIAGNOSTICS COMPLETE&rdquo; in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to <a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SelfTestDiagnostics.Results">Results</span></td>
<td>string(:1024)</td>
<td>R</td>
<td><p>Results of self-test (vendor specific).</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.">Device.NSLookupDiagnostics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object defines access to an IP-layer NS Lookup test for the specified IP interface.
When initiated, the NS Lookup test will contact <a href="#D.Device:1.Device.NSLookupDiagnostics.DNSServer"><em>DNSServer</em></a> and look up <a href="#D.Device:1.Device.NSLookupDiagnostics.HostName"><em>HostName</em></a> <a href="#D.Device:1.Device.NSLookupDiagnostics.NumberOfRepetitions"><em>NumberOfRepetitions</em></a> times.
There will be a <a href="#D.Device:1.Device.NSLookupDiagnostics.Result."><em>Result</em></a> instance for each time the device performs a DNS lookup, which is determined by the value of <a href="#D.Device:1.Device.NSLookupDiagnostics.NumberOfRepetitions"><em>NumberOfRepetitions</em></a>.
Any previous <a href="#D.Device:1.Device.NSLookupDiagnostics.Result."><em>Result</em></a> instances are removed when a new test is initiated.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState">DiagnosticsState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates availability of diagnostic data. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.None"><em>None</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Requested"><em>Requested</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Complete"><em>Complete</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Error_DNSServerNotResolved"><em>Error_DNSServerNotResolved</em></span> (Unable to resolve DNSServer Name, READONLY)</li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Error_Internal"><em>Error_Internal</em></span> (READONLY)</li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Error_Other"><em>Error_Other</em></span> (READONLY)
If the ACS sets the value of this parameter to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed value is <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set either prior to or at the same time as (in the same SetParameterValues) setting the DiagnosticsState to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a>.
When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic.
When the test is completed, the value of this parameter MUST be either <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a> (if the test completed successfully), or one of the Error values listed above.
If the value of this parameter is anything other than <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Complete"><em>Complete</em></a>, the values of the results parameters for this test are indeterminate.
When the diagnostic initiated by the ACS is completed (successfully or not), the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code &ldquo;8 DIAGNOSTICS COMPLETE&rdquo; in the Inform message.
After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.None"><em>None</em></a>.
Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.None"><em>None</em></a>.
While the test is in progress, setting this parameter to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Requested"><em>Requested</em></a> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters.</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Interface">Interface</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The value MUST be the Path Name of a table row. This parameter specifies the IP-layer interface over which the test is to be performed (i.e. the source IP address to use when performing the test).
If an empty string is specified, the CPE MUST use its routing policy (Forwarding table entries), if necessary, to determine the appropriate interface.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.HostName">HostName</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Specifies the Host Name that NS Lookup is to look for. The current domain name MUST be used unless the name is a fully qualified name.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.DNSServer">DNSServer</span></td>
<td>string(:256)</td>
<td>W</td>
<td>Specifies the DNS Server name or IP address that NS Lookup is to use for the lookup. The name of this server will be resolved using the default DNS server unless an IP address is provided.
If an empty string is specified, the device’s default DNS server will be used.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Timeout">Timeout</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>Timeout in <em>milliseconds</em> that indicates that a request has failed.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.NumberOfRepetitions">NumberOfRepetitions</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The number of times the device SHOULD repeat the execution of the NSLookup using the same input parameters. If the diagnostics test fails the CPE MAY terminate the test without completing the full number of repetitions.
Each repetition will use a Result instance to hold the NSLookup result data.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.SuccessCount">SuccessCount</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Number of successfully executed repetitions.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.ResultNumberOfEntries">ResultNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>The number of entries in the <a href="#D.Device:1.Device.NSLookupDiagnostics.Result."><em>Result</em></a> table.
Total number of Result entries from the most recent invocation of the test.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.">Device.NSLookupDiagnostics.Result.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td>Results from the most recent invocation of the test, one instance per repetition.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Result Parameter to represent whether the NS Lookup was successful or not.
Errors for individual Result instances do not get bubbled up to <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState"><em>DiagnosticsState</em></a>.
A failure on a specific attempt does not mean that the overall test failed, but a failure on all attempts means that <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState"><em>DiagnosticsState</em></a> SHOULD be <a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState.Error_Other"><em>Error_Other</em></a>.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status.Success"><em>Success</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status.Error_DNSServerNotAvailable"><em>Error_DNSServerNotAvailable</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status.Error_HostNameNotResolved"><em>Error_HostNameNotResolved</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status.Error_Timeout"><em>Error_Timeout</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.Status.Error_Other"><em>Error_Other</em></span></li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType">AnswerType</span></td>
<td>string</td>
<td>R</td>
<td><p>Result parameter to represent whether the answer is Authoritative or not.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType.None"><em>None</em></span> (Indicates that the NS Lookup failed to find the host)</li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType.Authoritative"><em>Authoritative</em></span></li>
<li><span id="D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType.NonAuthoritative"><em>NonAuthoritative</em></span></li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.HostNameReturned">HostNameReturned</span></td>
<td>string(:256)</td>
<td>R</td>
<td><p>Result parameter to represent the fully qualified name for the Host Name in the calling parameter (e.g. HostName.DomainName); if no response was provided, then this parameter is an empty string.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.IPAddresses">IPAddresses</span></td>
<td><span title="IPAddress[:10]">string(:45)[:10]</span></td>
<td>R</td>
<td><p>[<a href="#T.IPAddress">IPAddress</a>] Comma-separated list (up to 10 items) of IP Addresses. Indicates the IP Address results returned by the NS Lookup; if no response was provided, then this parameter is an empty string.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.DNSServerIP">DNSServerIP</span></td>
<td><span title="IPAddress">string(:45)</span></td>
<td>R</td>
<td><p>[<a href="#T.IPAddress">IPAddress</a>] Result parameter to represent the actual DNS Server IP address that the NS Lookup used.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.NSLookupDiagnostics.Result.ResponseTime">ResponseTime</span></td>
<td>unsignedInt</td>
<td>R</td>
<td><p>Response time (for the first response packet) in <em>milliseconds</em>, or 0 if no response was received.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.Firewall.">Device.Firewall.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Firewall configuration object.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Firewall.Config">Config</span></td>
<td>string</td>
<td>W</td>
<td><p>How this firewall is configured. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.Firewall.Config.High"><em>High</em></span> (The firewall implements the &ldquo;Traffic Denied Inbound&rdquo; and &ldquo;Minimally Permit Common Services Outbound&rdquo; components of the ICSA residential certification’s Required Services Security Policy [<a href="#R.ICSA-Residential">ICSA-Residential</a>]. If DoS and vulnerability protections are implemented [<a href="#R.ICSA-Baseline">ICSA-Baseline</a>], these are enabled)</li>
<li><span id="D.Device:1.Device.Firewall.Config.Low"><em>Low</em></span> (All Outbound traffic and pinhole-defined Inbound traffic is allowed. If DoS and vulnerability protections are implemented [<a href="#R.ICSA-Baseline">ICSA-Baseline</a>], these are enabled)</li>
<li><span id="D.Device:1.Device.Firewall.Config.Off"><em>Off</em></span> (All Inbound and Outbound traffic is allowed, and the CPE is only protected by NAT settings (if supported and enabled). If DoS and vulnerability protections are implemented [<a href="#R.ICSA-Baseline">ICSA-Baseline</a>], these are disabled)
Vendors can extend the enumerated values with vendor specific extensions, in which case the rules outlined in [<a href="#R.TR-106a2">Section 3.3/TR-106a2</a>] MUST be adhered to.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Firewall.Version">Version</span></td>
<td>string(:16)</td>
<td>R</td>
<td>A string identifying the firewall settings version currently used in the CPE, or an empty string if the firewall settings are not associated with a version.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.Firewall.LastChange">LastChange</span></td>
<td>dateTime</td>
<td>R</td>
<td>The time at which the firewall settings most recently changed.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.USBHosts.">Device.USBHosts.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object models the CPE’s USB Host controllers.
See [<a href="#R.TR-157">Appendix I/TR-157</a>] for Theory of Operation.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.HostNumberOfEntries">HostNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.USBHosts.Host."><em>Host</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.USBHosts.Host.">Device.USBHosts.Host.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>Table of CPE USB Host controllers.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.USBHosts.Host.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables the USB Host controller.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Name">Name</span></td>
<td>string(:64)</td>
<td>R</td>
<td>User-readable host controller name.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Type">Type</span></td>
<td>string</td>
<td>R</td>
<td><p>Type of USB Host</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.USBHosts.Host.Type.OHCI"><em>OHCI</em></span> (Open Host Controller Interface)</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Type.EHCI"><em>EHCI</em></span> (Enhanced Host Controller Interface)</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Type.UHCI"><em>UHCI</em></span> (Universal Host Controller Interface)</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Type.xHCI"><em>xHCI</em></span> (Extensible Host Controller Interface)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Reset">Reset</span></td>
<td>boolean</td>
<td>W</td>
<td><p>When set to <em>true</em>, reset the Host Controller and apply the reset signaling (see [<a href="#R.USB2.0">Chapter 7.1.7.5/USB2.0</a>]) to all of the Host Controller Hub downstream ports.
The value is not saved in the device’s state and setting it to <em>false</em> has no effect.</p>

<p>When read, this parameter returns <em>false</em>, regardless of the actual value.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.PowerManagementEnable">PowerManagementEnable</span></td>
<td>boolean</td>
<td>W</td>
<td>When set to <em>true</em>, <em>PowerManagementEnable</em> enables the Host Controller to invoke Power Management policy, i.e. controlled Suspend (see [<a href="#R.USB2.0">USB2.0</a>], Chapters 4.3.2, 7.1.7.6, and 11.9).
When set to <em>false</em> <em>PowerManagementEnable</em> immediately disables the Host controller Power Management policy.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.USBVersion">USBVersion</span></td>
<td>string(:4)</td>
<td>R</td>
<td>USB specification version with which the controller complies. Example: &ldquo;1.1&rdquo;</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.DeviceNumberOfEntries">DeviceNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.USBHosts.Host.Device."><em>Device</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.">Device.USBHosts.Host.{i}.Device.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>Table of connected USB devices.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceNumber"><em>DeviceNumber</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.DeviceNumber">DeviceNumber</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Device number on USB bus.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.USBVersion">USBVersion</span></td>
<td>string(:4)</td>
<td>R</td>
<td>USB specification version with which the device complies. Example: &ldquo;1.1&rdquo;</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.DeviceClass">DeviceClass</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Class Code as assigned by USB-IF.
When 0x00, each device specifies its own class code. When 0xFF, the class code is vendor specified.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.DeviceSubClass">DeviceSubClass</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Subclass code (assigned by USB-IF).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.DeviceVersion">DeviceVersion</span></td>
<td>unsignedInt(:65535)</td>
<td>R</td>
<td>Device release number.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.DeviceProtocol">DeviceProtocol</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Protocol code (assigned by USB-IF).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.ProductID">ProductID</span></td>
<td>unsignedInt(:65535)</td>
<td>R</td>
<td>Product ID (assigned by manufacturer).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.VendorID">VendorID</span></td>
<td>unsignedInt(:65535)</td>
<td>R</td>
<td>Vendor ID (assigned by USB-IF).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Manufacturer">Manufacturer</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Device Manufacturer string descriptor.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.ProductClass">ProductClass</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Device Product Class string descriptor.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.SerialNumber">SerialNumber</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Device SerialNumber string descriptor.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Port">Port</span></td>
<td>unsignedInt(:255)</td>
<td>R</td>
<td>Hub port on parent device.
0 when no parent.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Rate">Rate</span></td>
<td>string</td>
<td>R</td>
<td><p>Speed of the USB device. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.USBHosts.Host.Device.Rate.Low"><em>Low</em></span> (1.5 Mbits/sec (187.5 KB/sec) defined in [<a href="#R.USB1.0">USB1.0</a>])</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Device.Rate.Full"><em>Full</em></span> (12 Mbits/sec (1.5 MB/sec) defined in [<a href="#R.USB1.0">USB1.0</a>])</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Device.Rate.High"><em>High</em></span> (480 Mbits/sec (60 MB/sec) defined in [<a href="#R.USB2.0">USB2.0</a>])</li>
<li><span id="D.Device:1.Device.USBHosts.Host.Device.Rate.Super"><em>Super</em></span> (5.0 Gbits/sec (625 MB/sec) defined in [<a href="#R.USB3.0">USB3.0</a>])
Internal signaling between the connected USB device and the USB Host Controller provide the information needed to determine the negotiated rate.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Parent">Parent</span></td>
<td>string</td>
<td>R</td>
<td>The value MUST be the Path Name of a row in the <a href="#D.Device:1.Device.USBHosts.Host.Device."><em>Device.</em></a> table. If the referenced object is deleted, the parameter value MUST be set to an empty string. This is a reference to the parent USB device (e.g. hub device).
This is an empty string for a device connected to the Host controller (root hub).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.MaxChildren">MaxChildren</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Number of ports. Only applies for hub device, equal to 0 for other devices.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.IsSuspended">IsSuspended</span></td>
<td>boolean</td>
<td>R</td>
<td>When <em>true</em> the associated Device is in a suspended (i.e. low-power) state (see [<a href="#R.USB2.0">Chapter 11.9/USB2.0</a>]).
When <em>false</em> the associated Device is in any of the other states specified by the USB 2.0 Device State Machine (see [<a href="#R.USB2.0">Chapter 9.1.1/USB2.0</a>]).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.IsSelfPowered">IsSelfPowered</span></td>
<td>boolean</td>
<td>R</td>
<td>When <em>true</em> the associated device is at least partly powered by a local source (see [<a href="#R.USB2.0">Chapter 9.4.5/USB2.0</a>]).
When <em>false</em> the associated device draws all the current it needs from the USB bus.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.ConfigurationNumberOfEntries">ConfigurationNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration."><em>Configuration</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.">Device.USBHosts.Host.{i}.Device.{i}.Configuration.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>Table of device configurations.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.ConfigurationNumber"><em>ConfigurationNumber</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.ConfigurationNumber">ConfigurationNumber</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The identifier for each Device Configuration.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.InterfaceNumberOfEntries">InterfaceNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface."><em>Interface</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.">Device.USBHosts.Host.{i}.Device.{i}.Configuration.{i}.Interface.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>Table of device interface descriptors.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceNumber"><em>InterfaceNumber</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceNumber">InterfaceNumber</span></td>
<td>unsignedInt(:255)</td>
<td>R</td>
<td>Number of this interface (from USB interface descriptor).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceClass">InterfaceClass</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Class Code as assigned by USB-IF.
When 0x00, each interface specifies its own class code. When 0xFF, the class code is vendor specified.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceSubClass">InterfaceSubClass</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Subclass code (assigned by USB-IF).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceProtocol">InterfaceProtocol</span></td>
<td>hexBinary(:1)</td>
<td>R</td>
<td>Protocol code (assigned by USB-IF).</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.PeriodicStatistics.">Device.PeriodicStatistics.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object configures collection of periodic statistics for the device.
Periodic statistics are measured over a sample interval (which can be aligned with absolute time) and are made available to the ACS as a comma-separated list of the most recent <n> samples.
This object provides a single set of global settings that affect the entire device unless overridden locally.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.MinSampleInterval">MinSampleInterval</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Minimum sample interval in <em>seconds</em> that the CPE is able to support.
A value of 0 indicates no specific minimum sample interval.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.MaxReportSamples">MaxReportSamples</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Maximum number of samples of each statistic that the CPE is able to store and report.
A value of 0 indicates no specific maximum number of samples.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSetNumberOfEntries">SampleSetNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet."><em>SampleSet</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.">Device.PeriodicStatistics.SampleSet.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>W</td>
<td><p>Periodic statistics sample set table. Each sample set has its own sample interval etc.</p>

<p>At most one enabled entry in this table can exist with a given value for <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables collection of periodic statistics for this sample set.
When collection of periodic statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately.</td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Indicates availability of Sample statistics. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Disabled"><em>Disabled</em></span> (Collection is disabled)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></span> (Collection is enabled)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></span> (Collection is enabled and the ACS SHOULD now fetch the collected data)
The <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> value is only used for triggering the ACS to fetch the collected data and can only be used when <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples"><em>FetchSamples</em></a> is in the range [1:<a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a>].
The transition from <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> MUST be instantaneous and so will result in only a single value change for notification purposes.</li></ul></td>
<td>Disabled</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Name">Name</span></td>
<td>string(:128)</td>
<td>W</td>
<td>The name of this sample set, which uniquely distinguishes each sample set.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval">SampleInterval</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>The sample interval in <em>seconds</em>. Each statistic is measured over this sample interval.
The CPE MAY reject a request to set <em>SampleInterval</em> to less than <a href="#D.Device:1.Device.PeriodicStatistics.MinSampleInterval"><em>PeriodicStatistics.MinSampleInterval</em></a>.
Sample intervals MUST begin every <em>SampleInterval</em> <em>seconds</em>, with no delay between samples.
If <em>SampleInterval</em> is changed while collection of periodic statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately.
For example, if <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a> is 24 and <em>SampleInterval</em> is 3600 (an hour), the CPE can store up to a day’s worth of samples for each statistic.</td>
<td>3600</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples">ReportSamples</span></td>
<td>unsignedInt(1:)</td>
<td>W</td>
<td>The number of samples that the CPE will store and report for each statistic.
The CPE MUST permit <em>ReportSamples</em> to be set to at least <a href="#D.Device:1.Device.PeriodicStatistics.MaxReportSamples"><em>PeriodicStatistics.MaxReportSamples</em></a>.
If <em>ReportSamples</em> is changed while collection of periodic statistics is enabled, the CPE will truncate or extend its statistics buffers as appropriate, but statistics collection MUST NOT otherwise be affected.
For example, if <em>ReportSamples</em> is 24 and <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a> is 3600 (an hour), the CPE can store up to a day’s worth of samples for each statistic.</td>
<td>24</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.TimeReference">TimeReference</span></td>
<td>dateTime</td>
<td>W</td>
<td>An absolute time reference in UTC to determine when sample intervals will complete. Each sample interval MUST complete at this reference time plus or minus an integer multiple of <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a>.
<em>TimeReference</em> is used only to set the &ldquo;phase&rdquo; of the sample and fetch intervals. The actual value of <em>TimeReference</em> can be arbitrarily far into the past or future.
This time reference also determines when the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> transitions that are controlled by <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples"><em>FetchSamples</em></a> will occur. If collection of periodic statistics is enabled and <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples"><em>FetchSamples</em></a> is in the range [1:<a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a>] then each such <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> transition MUST occur at this reference time plus or minus an integer multiple of <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples"><em>FetchSamples</em></a> * <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a> (the fetch interval).
If <em>TimeReference</em> is changed while collection of periodic statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately.
The Unknown Time value defined in [<a href="#R.TR-106a2">TR-106a2</a>] indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and is required only to adhere to the specified sample and fetch intervals.
If absolute time is not available to the CPE, its sample and fetch interval behavior MUST be the same as if the <em>TimeReference</em> parameter was set to the Unknown Time value.
For example, if <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a> is 3600 (an hour) and if <em>TimeReference</em> is set to UTC midnight on some day (in the past, present, or future) then sample intervals will complete on each UTC hour (00:00, 01:00, 02:00 etc).
If, in addition, <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples"><em>FetchSamples</em></a> is 24, then the fetch interval is 86400 (a day) and <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> transitions will occur every day at UTC midnight.
Note that, if <em>TimeReference</em> is set to a time other than the Unknown Time, the first sample interval (which has to begin immediately) will almost certainly be shorter than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a>). This is why <em>TimeReference</em> is defined in terms of when sample intervals complete rather than start.</td>
<td>0001-01-01T00:00:00Z</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples">FetchSamples</span></td>
<td>unsignedInt</td>
<td>W</td>
<td>The number of sample intervals to be collected before transitioning <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> from <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a>.
If this SampleSet is enabled and <em>FetchSamples</em> is in the range [1:<a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a>] then <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> MUST transition from <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Trigger"><em>Trigger</em></a> to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status.Enabled"><em>Enabled</em></a> on completion of every <em>FetchSamples</em> sample intervals. Otherwise, the transition MUST NOT occur.
For example, if <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a> is 25 and <em>FetchSamples</em> is 24, then the CPE will store 25 values for each monitored parameter and the above <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status"><em>Status</em></a> transition will occur as the CPE stores each 24th of 25 sample intervals, which means that the ACS could delay for up to two sample intervals before reading the stored values and would still not miss any samples (see also <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ForceSample"><em>ForceSample</em></a>).
To disable this trigger mechanism and still collect sampled statistics, <em>FetchSamples</em> can be set to either 0 or a value greater than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples"><em>ReportSamples</em></a>.</td>
<td>0</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.ForceSample">ForceSample</span></td>
<td>boolean</td>
<td>W</td>
<td>When set to <em>true</em>, forces statistics for the current sample to be calculated and updated in the data model. Setting it to <em>false</em> has no effect. When read, this parameter returns <em>false</em>, regardless of the actual value.
If this is the first time that <em>ForceSample</em> has been set to <em>true</em> during the current sample interval, this MUST cause a new value to be added to each of the periodic statistics comma-separated list parameters, and the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportEndTime"><em>ReportEndTime</em></a> and all <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds"><em>SampleSeconds</em></a> parameters MUST be updated accordingly.
If this is not the first time that <em>ForceSample</em> has been set to <em>true</em> during the current sample interval, then the new values that were added as described in the previous paragraph, and the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportEndTime"><em>ReportEndTime</em></a> and all <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds"><em>SampleSeconds</em></a> parameters, MUST be updated accordingly.
Note that <em>ForceSample</em> just provides a &ldquo;sneak preview&rdquo; of the current sample. It does not create a new sample and it does not interfere with the sample interval schedule.
At the end of each sample interval, if <em>ForceSample</em> was set to <em>true</em> during the sample interval then the new values that were added as described above, and the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportEndTime"><em>ReportEndTime</em></a> and all <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds"><em>SampleSeconds</em></a> parameters, will be updated accordingly. In other words, the partial sample data that was created when <em>ForceSample</em> was set to <em>true</em> will be updated one last time at the end of the sample interval.</td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.ReportStartTime">ReportStartTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The absolute time at which the sample interval for the first stored sample (for each statistic) started.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.ReportEndTime">ReportEndTime</span></td>
<td>dateTime</td>
<td>R</td>
<td>The absolute time at which the sample interval for the last stored sample (for each statistic) ended.
If <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ForceSample"><em>ForceSample</em></a> has been used to force statistics for the current sample to be calculated and updated in the data model, then <em>ReportEndTime</em> MUST be updated to reflect the actual time over which stored data was collected.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds">SampleSeconds</span></td>
<td>unsignedInt[]</td>
<td>R</td>
<td><p>Comma-separated list of unsigned integers. Each entry indicates the number of <em>seconds</em> during which data was collected during the sample interval.
Individual <em>SampleSeconds</em> values can be less than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>SampleInterval</em></a>, for several reasons, including:</p>

<blockquote><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.TimeReference"><em>TimeReference</em></a> has been set to a time other than the Unknown Time and the current sample interval started part of the way through a scheduled sample interval.</blockquote>

<blockquote><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ForceSample"><em>ForceSample</em></a> has been used to force statistics for the current sample to be calculated and updated in the data model.</blockquote>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.ParameterNumberOfEntries">ParameterNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter."><em>Parameter</em></a> table.</td>
<td>0</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.">Device.PeriodicStatistics.SampleSet.{i}.Parameter.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>W</td>
<td><p>Periodic statistics parameter table for this sample set. This table contains entries for parameters whose values are to be sampled.
Note that the comma-separated lists in this object (SampleSeconds, SuspectData and Values) only ever change (a) when first enabled, (b) when ForceSample is set to true (a &ldquo;sneak preview&rdquo; of the current sample), or (c) at the end of the sample interval.</p>

<p>At most one enabled entry in this table can exist with a given value for <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Reference"><em>Reference</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enables or disables this object instance.</td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Reference">Reference</span></td>
<td>string(:256)</td>
<td>W</td>
<td>The value MUST be the Path Name of a parameter. This is the parameter being monitored by the Periodic Statistics mechanism.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode">SampleMode</span></td>
<td>string</td>
<td>W</td>
<td><p>Controls how this parameter’s value is sampled. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode.Current"><em>Current</em></span> (Sampled value is current value)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode.Change"><em>Change</em></span> (Sampled value is change in value since start of sample interval)
Parameters of non-numeric types can only support <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode.Current"><em>Current</em></a>. The value of the <em>SampleMode</em> MUST be ignored for such parameters.</li></ul></td>
<td>Current</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode">CalculationMode</span></td>
<td>string</td>
<td>W</td>
<td><p>Controls how this parameter’s statistic is calculated from the sampled value(s). Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode.Latest"><em>Latest</em></span> (Statistic is sampled value at end of sample interval)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode.Minimum"><em>Minimum</em></span> (Statistic is minimum sampled value during sample interval)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode.Maximum"><em>Maximum</em></span> (Statistic is maximum sampled value during sample interval)</li>
<li><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode.Average"><em>Average</em></span> (Statistic is average (mean) sampled value during sample interval)
Parameters of non-numeric types can only support <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode.Latest"><em>Latest</em></a>. The value of the <em>CalculationMode</em> MUST be ignored for such parameters.
<a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode"><em>SampleMode</em></a> MUST be applied before <em>CalculationMode</em>, i.e. the inputs to the calculation will have already accounted for <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode"><em>SampleMode</em></a>.</li></ul></td>
<td>Latest</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold">LowThreshold</span></td>
<td>int</td>
<td>W</td>
<td>The low threshold value that controls the calculation of <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Failures"><em>Failures</em></a>.
A value equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold"><em>HighThreshold</em></a> disables the threshold/failure mechanism.
Parameters of non-numeric types cannot support the threshold/failure mechanism. The value of this parameter MUST be ignored for such parameters.</td>
<td>0</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold">HighThreshold</span></td>
<td>int</td>
<td>W</td>
<td>The high threshold value that controls the calculation of <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Failures"><em>Failures</em></a>.
A value equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold"><em>LowThreshold</em></a> disables the threshold/failure mechanism.
Parameters of non-numeric types cannot support the threshold/failure mechanism. The value of this parameter MUST be ignored for such parameters.</td>
<td>0</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleSeconds">SampleSeconds</span></td>
<td>unsignedInt[]</td>
<td>R</td>
<td><p>Comma-separated list of unsigned integers. Each entry indicates the number of <em>seconds</em> during which data was collected for this parameter during the sample interval.
Individual <em>SampleSeconds</em> values can be less than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>PeriodicStatistics.SampleSet.{i}.SampleInterval</em></a>, for several reasons, including:</p>

<blockquote>Any of the reasons for which <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds"><em>PeriodicStatistics.SampleSet.{i}.SampleSeconds</em></a> values might be less than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval"><em>PeriodicStatistics.SampleSet.{i}.SampleInterval</em></a>.</blockquote>

<blockquote>The parameter doesn’t exist, or was created or deleted during a sample interval.</blockquote>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SuspectData">SuspectData</span></td>
<td>unsignedInt(:1)[]</td>
<td>R</td>
<td><p>Comma-separated list of unsigned integers (up to 1). Each entry is 0 if the sampled value is believed to be valid, or 1 if an event that might affect the validity of the sampled value occurred during the sample interval.
For example, if the parameter value were to be reset during the sample interval then it would be appropriate to set <em>SuspectData</em> to 1.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Values">Values</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Each entry indicates the value of the referenced parameter, as determined by <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode"><em>SampleMode</em></a>, during the sample interval.
The statistics values in this comma-separated lists MUST be in time order, with the oldest one first and the most recent one last.
If the <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode"><em>SampleMode</em></a> parameter is not present, or is inappropriate for the referenced parameter, the statistics values MUST be collected in Current mode.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Failures">Failures</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>Counts the number of times (since this object instance was last enabled) that a newly-calculated sample value (accounting for <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode"><em>SampleMode</em></a>) transitioned from the “in range” state to the “out of range” state, or between the “out of range (low)” and “out of range (high)” states. The states are defined as follows:

<ul>
<li>“in range” : current value is greater than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold"><em>LowThreshold</em></a> and less than <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold"><em>HighThreshold</em></a>.</li>
<li>“out of range” : current value is less than or equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold"><em>LowThreshold</em></a>, or greater than or equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold"><em>HighThreshold</em></a>.</li>
<li>“out of range (low)” : current value is less than or equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold"><em>LowThreshold</em></a>.</li>
<li>“out of range (high)” : current value is greater than or equal to <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold"><em>HighThreshold</em></a>.
Note that, if <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold"><em>LowThreshold</em></a> and <a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold"><em>HighThreshold</em></a> are both the same, the threshold/failure mechanism is disabled, so the value of this parameter will not increment.
This parameter can be incremented at any time during a sample interval, and might be incremented more than once during a single sample interval. For this reason, the CPE SHOULD place a locally specified limit on the frequency at which it will notify the ACS of such changes, as described in [<a href="#R.TR-069a2">Section 3.2.1/TR-069a2</a>].
Parameters of non-numeric types cannot support the threshold/failure mechanism. The value of this parameter MUST be ignored for such parameters.</li></ul></td>
<td>0</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DownloadAvailability.">Device.DownloadAvailability.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains multicast announcement and query parameters used for the purpose of downloading files.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.">Device.DownloadAvailability.Announcement.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains multicast announcement parameters used to download files.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enable/disable CPE ability to receive and use multicast announcements from a server for the purpose of downloading files.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of the announcement service.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Status.Disabled"><em>Disabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Status.Enabled"><em>Enabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Status.Error"><em>Error</em></span> (MAY be used by the CPE to indicate a locally defined error condition, OPTIONAL)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.GroupNumberOfEntries">GroupNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group."><em>Group</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.">Device.DownloadAvailability.Announcement.Group.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>W</td>
<td><p>Multicast groups to which the CPE SHOULD listen for announcements.</p>

<p>At most one enabled entry in this table can exist with a given value for <a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.URL"><em>URL</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enable/disable listening to this multicast group.</td>
<td>false</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of this group table entry.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.Status.Disabled"><em>Disabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.Status.Enabled"><em>Enabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.Status.Error"><em>Error</em></span> (MAY be used by the CPE to indicate a locally defined error condition, e.g. unable to parse received announcements, OPTIONAL)</li></ul></td>
<td>Disabled</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Announcement.Group.URL">URL</span></td>
<td>string(:256)</td>
<td>W</td>
<td>URL [<a href="#R.RFC3986">RFC3986</a>] encoding the group address, source and port on which to listen, and other protocol information, e.g. expected announcement format.
Depending on the application, the messages identified by this URL MAY directly contain the data to be downloaded, or alternatively MAY contain information informing the CPE how to obtain the data to be downloaded via a separate mechanism, which itself could involve a unicast or a multicast download protocol.
Refer to [<a href="#R.DVB-TS.102.824">DVB-TS.102.824</a>] for an example of a URL format that identifies a SAP [<a href="#R.RFC2974">RFC2974</a>] stream that indicates how to use either FLUTE [<a href="#R.RFC3926">RFC3926</a>] or DSM-CC [<a href="#R.ISO-13818-6:1998">ISO-13818-6:1998</a>] to perform the download.</td>
<td><em>&lt;Empty&gt;</em></td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.DownloadAvailability.Query.">Device.DownloadAvailability.Query.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object contains multicast query parameters used to download files.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Query.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Enable/disable CPE ability to autonomously query a server for the purpose of downloading files.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Query.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>The status of the query service.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.DownloadAvailability.Query.Status.Disabled"><em>Disabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Query.Status.Enabled"><em>Enabled</em></span></li>
<li><span id="D.Device:1.Device.DownloadAvailability.Query.Status.Error"><em>Error</em></span> (MAY be used by the CPE to indicate a locally defined error condition, e.g. unable to contact query response server, OPTIONAL)</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.DownloadAvailability.Query.URL">URL</span></td>
<td>string(:256)</td>
<td>W</td>
<td>URL [<a href="#R.RFC3986">RFC3986</a>] of the query response server.
Depending on the application, the protocol described by this URL MAY be a SOAP interface, or MAY be any other RPC mechanism.
Refer to [<a href="#R.DVB-TS.102.824">DVB-TS.102.824</a>] for an example of a URL format that identifies a SOAP interface running over HTTP or HTTPS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SoftwareModules.">Device.SoftwareModules.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>Top level object for dynamically managed software applications.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnvNumberOfEntries">ExecEnvNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnitNumberOfEntries">DeploymentUnitNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnitNumberOfEntries">ExecutionUnitNumberOfEntries</span></td>
<td>unsignedInt</td>
<td>R</td>
<td>The number of entries in the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.">Device.SoftwareModules.ExecEnv.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>The Execution Environments that are available on the device, along with their properties and configurable settings.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Alias"><em>Alias</em></a>, or with a given value for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Name"><em>Name</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Enable">Enable</span></td>
<td>boolean</td>
<td>W</td>
<td>Indicates whether or not this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> is enabled.
Disabling an enabled Execution Environment stops it, while enabling a disabled Execution Environment starts it.
When an Execution Environment is disabled, Deployment Units installed to that Execution Environment will be unaffected, but any Execution Units currently running on that Execution Environment will automatically transition to <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Idle"><em>Idle</em></a>.
If a ChangeDUState is attempted on a <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> that is to be applied against a disabled <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>, that ChangeDUState operation fails and the associated DUStateChangeComplete RPC will contain a FaultStruct for that operation.
If a SetParameterValues is attempted against the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState"><em>ExecutionUnit.{i}.RequestedState</em></a> for an <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> that is associated with a disabled <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> a CWMP Fault will be issued in response.
Disabling an Execution Environment could place the device in a non-manageable state. For example, if the operating system itself was modeled as an <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> and the ACS disabled it, the CWMP management agent might be terminated leaving the device unmanageable.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Indicates the status of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Status.Up"><em>Up</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Status.Error"><em>Error</em></span> (OPTIONAL)</li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Status.Disabled"><em>Disabled</em></span></li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Reset">Reset</span></td>
<td>boolean</td>
<td>W</td>
<td>Setting this parameter to <em>true</em> causes this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> to revert back to the state it was in when the device last issued a &ldquo;0 BOOTSTRAP&rdquo; Inform event. The following requirements dictate what MUST happen for the reset to be complete:

<ol>
<li>All Deployment Units that were installed after the last &ldquo;0 BOOTSTRAP&rdquo; Inform event MUST be removed</li>
<li>All persistent storage, configuration files, and log files that were associated with the removed Deployment Units MUST be removed</li>
<li>Any Deployment Unit that is still installed against the Execution Environment MUST be restored to the version present when the last &ldquo;0 BOOTSTRAP&rdquo; Inform event was issued</li>
<li>Any Deployment Unit that was present when the last &ldquo;0 BOOTSTRAP&rdquo; Inform event was issued, but was subsequently uninstalled and is now not present, MUST be installed with the version that was present when the last &ldquo;0 BOOTSTRAP&rdquo; Inform event was issued</li>
<li>The Execution Environment MUST be restored to the version and configuration present when the last &ldquo;0 BOOTSTRAP&rdquo; Inform event was issued</li>
<li>The Execution Environment MUST be restarted after all other restoration requirements have been met</li></ol></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Alias">Alias</span></td>
<td>string(:64)</td>
<td>W</td>
<td>A non-volatile handle used to reference this instance. <em>Alias</em> provides a mechanism for an ACS to label this instance for future reference.
An initial unique value MUST be assigned when the CPE creates an instance of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Name">Name</span></td>
<td>string(:32)</td>
<td>R</td>
<td>A Name provided by the CPE that adequately distinguishes this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> from all other <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Type">Type</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Indicates the complete type and specification version of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.InitialRunLevel">InitialRunLevel</span></td>
<td>unsignedInt(:65535)</td>
<td>W</td>
<td>The run level that this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> will be in upon startup (whether that is caused by a CPE Boot or the Execution Environment starting).
Run levels dictate which Execution Units will be started. Execution Units will be started if <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>CurrentRunLevel</em></a> is greater than or equal to <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RunLevel"><em>ExecutionUnit.{i}.RunLevel</em></a> and <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.AutoStart"><em>ExecutionUnit.{i}.AutoStart</em></a> is <em>true</em>.
If the value of <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>CurrentRunLevel</em></a> is -1, then the value of this parameter is irrelevant when read and setting its value has no impact on the Run Level of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.RequestedRunLevel">RequestedRunLevel</span></td>
<td>int(-1:65535)</td>
<td>W</td>
<td>Provides a mechanism to remotely manipulate the run level of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>, meaning that altering this parameter’s value will change the value of the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>CurrentRunLevel</em></a>.
Run levels dictate which Execution Units will be started. Execution Units will be started if <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>CurrentRunLevel</em></a> is greater than or equal to <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RunLevel"><em>ExecutionUnit.{i}.RunLevel</em></a> and <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.AutoStart"><em>ExecutionUnit.{i}.AutoStart</em></a> is <em>true</em>.
Setting this value when <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>CurrentRunLevel</em></a> is -1 has no impact to the Run Level of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel">CurrentRunLevel</span></td>
<td>int(-1:65535)</td>
<td>R</td>
<td>The run level that this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> is currently operating in. This value is altered by changing the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.RequestedRunLevel"><em>RequestedRunLevel</em></a> parameter.
Upon startup (whether that is caused by a CPE Boot or the Execution Environment starting) <em>CurrentRunLevel</em> will be equal to <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.InitialRunLevel"><em>InitialRunLevel</em></a>, unless Run Levels are not supported by this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> in which case <em>CurrentRunLevel</em> will be -1.
Run levels dictate which Execution Units will be started. Execution Units will be started if <em>CurrentRunLevel</em> is greater than or equal to <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RunLevel"><em>ExecutionUnit.{i}.RunLevel</em></a> and <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.AutoStart"><em>ExecutionUnit.{i}.AutoStart</em></a> is <em>true</em>.
If <em>CurrentRunLevel</em> is -1 then Run Levels are not supported by this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> and setting <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.InitialRunLevel"><em>InitialRunLevel</em></a> or <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.RequestedRunLevel"><em>RequestedRunLevel</em></a> will not impact the Run Level of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Vendor">Vendor</span></td>
<td>string(:128)</td>
<td>R</td>
<td>The vendor that produced this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.Version">Version</span></td>
<td>string(:32)</td>
<td>R</td>
<td>The Version of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> as specified by the Vendor that implemented this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>, not the version of the specification.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.ParentExecEnv">ParentExecEnv</span></td>
<td>string</td>
<td>R</td>
<td>The value MUST be the Path Name of a row in the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv.</em></a> table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Represents the parent <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> of this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.
If this value is an empty string then this is the Primary Execution Environment.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.AllocatedDiskSpace">AllocatedDiskSpace</span></td>
<td>int(-1:)</td>
<td>R</td>
<td>The amount of disk space measured in <em>kilobytes</em> allocated to this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances where this parameter is not applicable.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.AvailableDiskSpace">AvailableDiskSpace</span></td>
<td>int(-1:)</td>
<td>R</td>
<td><p>The amount of disk space measured in <em>kilobytes</em> currently available to this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. This value changes as the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances associated with this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> consumes disk space. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances where this parameter is not applicable.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.AllocatedMemory">AllocatedMemory</span></td>
<td>int(-1:)</td>
<td>R</td>
<td>The amount of physical RAM measured in <em>kilobytes</em> allocated to this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances where this parameter is not applicable.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.AvailableMemory">AvailableMemory</span></td>
<td>int(-1:)</td>
<td>R</td>
<td><p>The amount of physical RAM measured in <em>kilobytes</em> currently available to this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. This value changes as the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances associated with this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> are started/stopped and consume the physical RAM. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances where this parameter is not applicable.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.ActiveExecutionUnits">ActiveExecutionUnits</span></td>
<td>string[]</td>
<td>R</td>
<td><p>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances currently running on this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. This parameter only contains <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances that currently have a <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status"><em>ExecutionUnit.{i}.Status</em></a> of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Active"><em>Active</em></a>.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecEnv.ProcessorRefList">ProcessorRefList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.Processor."><em>DeviceInfo.Processor.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the processors that this <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> has available to it.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.">Device.SoftwareModules.DeploymentUnit.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>This table serves as the Deployment Unit inventory and contains status information about each Deployment Unit.
A new instance of this table gets created during the installation of a Software Module.</p>

<p>At most one entry in this table can exist with the same values for all of <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID"><em>UUID</em></a>, <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Version"><em>Version</em></a> and <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionEnvRef"><em>ExecutionEnvRef</em></a>, or with a given value for <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Alias"><em>Alias</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID">UUID</span></td>
<td>string(:36)</td>
<td>R</td>
<td>A Universally Unique Identifier either provided by the ACS, or generated by the CPE, at the time of Deployment Unit Installation. The format of this value is defined by [<a href="#R.RFC4122">RFC4122</a>] Version 3 (Name-Based) and [<a href="#R.TR-069a3">Annex H/TR-069a3</a>].
This value MUST NOT be altered when the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> is updated.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.DUID">DUID</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Deployment Unit Identifier chosen by the targeted <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>. The format of this value is Execution Environment specific.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Alias">Alias</span></td>
<td>string(:64)</td>
<td>W</td>
<td>A non-volatile handle used to reference this instance. <em>Alias</em> provides a mechanism for an ACS to label this instance for future reference.
An initial unique value MUST be assigned when the CPE creates an instance of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Name">Name</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Indicates the Name of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>, which is chosen by the author of the Deployment Unit.
The value of this parameter is used in the generation of the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID"><em>UUID</em></a> based on the rules defined in [<a href="#R.TR-069a3">Annex H/TR-069a3</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Indicates the status of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Installing"><em>Installing</em></span> (This instance is in the process of being Installed and SHOULD transition to the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Installed"><em>Installed</em></a> state)</li>
<li><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Installed"><em>Installed</em></span> (This instance has been successfully Installed. The <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Resolved"><em>Resolved</em></a> flag SHOULD also be referenced for dependency resolution)</li>
<li><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Updating"><em>Updating</em></span> (This instance is in the process of being Updated and SHOULD transition to the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Installed"><em>Installed</em></a> state)</li>
<li><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Uninstalling"><em>Uninstalling</em></span> (This instance is in the process of being Uninstalled and SHOULD transition to the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Uninstalled"><em>Uninstalled</em></a> state)</li>
<li><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Status.Uninstalled"><em>Uninstalled</em></span> (This instance has been successfully Uninstalled. This status will typically not be seen within a <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> instance)</li></ul>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Resolved">Resolved</span></td>
<td>boolean</td>
<td>R</td>
<td>Indicates whether or not this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> has resolved all of its dependencies.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.URL">URL</span></td>
<td>string(:1024)</td>
<td>R</td>
<td>Contains the URL used by the most recent ChangeDUState RPC to either Install or Update this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Description">Description</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Textual description of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>. The format of this value is Execution Environment specific.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Vendor">Vendor</span></td>
<td>string(:128)</td>
<td>R</td>
<td>The author of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> formatted as a domain name.
The value of this parameter is used in the generation of the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID"><em>UUID</em></a> based on the rules defined in [<a href="#R.TR-069a3">Annex H/TR-069a3</a>].</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.Version">Version</span></td>
<td>string(:32)</td>
<td>R</td>
<td>Version of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>. The format of this value is Execution Environment specific.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.VendorLogList">VendorLogList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile."><em>DeviceInfo.VendorLogFile.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the vendor log files that have come into existence because of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>. This does not include any vendor log files that have come into existence because of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances that are contained within this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.
When this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> is uninstalled the vendor log files referenced here SHOULD be removed from the CPE.
Not all <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> instances will actually have a corresponding vendor log file, in which case the value of this parameter will be an empty string.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.VendorConfigList">VendorConfigList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.VendorConfigFile."><em>DeviceInfo.VendorConfigFile.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the vendor config files that have come into existence because of this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>. This does not include any vendor config files that have come into existence because of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances that are contained within this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.
When this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> is uninstalled the vendor config files referenced here SHOULD be removed from the CPE.
Not all <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> instances will actually have a corresponding vendor config file, in which case the value of this parameter will be an empty string.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionUnitList">ExecutionUnitList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances that are associated with this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> instance.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionEnvRef">ExecutionEnvRef</span></td>
<td>string</td>
<td>R</td>
<td>The value MUST be the Path Name of a row in the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv.</em></a> table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Represents the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instance where this <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> instance is installed.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.">Device.SoftwareModules.ExecutionUnit.{i}.</span></td>
<td><span title="object(0:∞)">object(0:)</span></td>
<td>R</td>
<td><p>This table serves as the Execution Unit inventory and contains both status information about each Execution Unit as well as configurable parameters for each Execution Unit.
Each <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> that is installed can have zero or more Execution Units.
Once a Deployment Unit is installed it populates this table with its contained Execution Units.
When the Deployment Unit (that caused this <em>ExecutionUnit</em> to come into existence) is updated, this instance MAY be removed and new instances MAY come into existence. While the Deployment Unit (that caused this <em>ExecutionUnit</em> to come into existence) is being updated, all <em>ExecutionUnit</em> instances associated with the Deployment Unit will be stopped until the update is complete at which time they will be restored to the state that they were in before the update started.
When the Deployment Unit (that caused this <em>ExecutionUnit</em> to come into existence) is uninstalled, this instance is removed.
Each <em>ExecutionUnit</em> MAY also contain a set of vendor specific parameters displaying status and maintaining configuration that reside under the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Extensions."><em>Extensions</em></a> object.</p>

<p>At most one entry in this table can exist with a given value for <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.EUID"><em>EUID</em></a>, or with a given value for <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Alias"><em>Alias</em></a>.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.EUID">EUID</span></td>
<td>string(:64)</td>
<td>R</td>
<td>Execution Unit Identifier chosen by the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> during installation of the associated <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.
The format of this value is Execution Environment specific, but it MUST be unique across <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> instances. Thus, it is recommended that this be a combination of the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Name"><em>ExecEnv.{i}.Name</em></a> and an Execution Environment local unique value.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Alias">Alias</span></td>
<td>string(:64)</td>
<td>W</td>
<td>A non-volatile handle used to reference this instance. <em>Alias</em> provides a mechanism for an ACS to label this instance for future reference.
An initial unique value MUST be assigned when the CPE creates an instance of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Name">Name</span></td>
<td>string(:32)</td>
<td>R</td>
<td>The name of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> as it pertains to its associated <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>, which SHOULD be unique across all <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances contained within its associated <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecEnvLabel">ExecEnvLabel</span></td>
<td>string(:64)</td>
<td>R</td>
<td>The name of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> as provided by the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>, which SHOULD be unique across all <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances contained within a specific <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Status">Status</span></td>
<td>string</td>
<td>R</td>
<td><p>Indicates the status of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.</p>

<p>Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Idle"><em>Idle</em></span> (This instance is in an Idle state and not running)</li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Starting"><em>Starting</em></span> (This instance is in the process of Starting and SHOULD transition to the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Active"><em>Active</em></a> state)</li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Active"><em>Active</em></span> (This instance is currently running)</li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Stopping"><em>Stopping</em></span> (This instance is in the process of Stopping and SHOULD transition to the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Idle"><em>Idle</em></a> state)</li></ul>

<p>Active Notification MUST by default be enabled for this parameter.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState">RequestedState</span></td>
<td>string</td>
<td>W</td>
<td><p>Indicates the state transition that the ACS is requesting for this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState.Idle"><em>Idle</em></span> (If this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> is currently in <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Starting"><em>Starting</em></a> or <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Active"><em>Active</em></a> the CPE will attempt to Stop the Execution Unit; otherwise this requested state is ignored)</li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState.Active"><em>Active</em></span> (If this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> is currently in <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Idle"><em>Idle</em></a> the CPE will attempt to Start the Execution Unit. If this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> is in <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Stopping"><em>Stopping</em></a> the request is rejected and a fault raised. Otherwise this requested state is ignored)
If this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> is associated with an Execution Environment that is disabled and an attempt is made to alter this value, then a CWMP Fault MUST be generated.</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode">ExecutionFaultCode</span></td>
<td>string</td>
<td>R</td>
<td><p>If while running or transitioning between states this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> identifies a fault this parameter embodies the problem. The value of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.NoFault"><em>NoFault</em></a> MUST be used when everything is working as intended. Enumeration of:</p>

<ul>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.NoFault"><em>NoFault</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.FailureOnStart"><em>FailureOnStart</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.FailureOnAutoStart"><em>FailureOnAutoStart</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.FailureOnStop"><em>FailureOnStop</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.FailureWhileActive"><em>FailureWhileActive</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.DependencyFailure"><em>DependencyFailure</em></span></li>
<li><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.UnStartable"><em>UnStartable</em></span>
For fault codes not included in this list, the vendor MAY include vendor-specific values, which MUST use the format defined in [<a href="#R.TR-106a4">Section 3.3/TR-106a4</a>].</li></ul></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultMessage">ExecutionFaultMessage</span></td>
<td>string(:256)</td>
<td>R</td>
<td>If while running or transitioning between states this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> identifies a fault this parameter provides a more detailed explanation of the problem.
If <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode"><em>ExecutionFaultCode</em></a> has the value of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode.NoFault"><em>NoFault</em></a> then the value of this parameter MUST an empty string and ignored by the ACS.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.AutoStart">AutoStart</span></td>
<td>boolean</td>
<td>W</td>
<td>If <em>true</em> and the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RunLevel"><em>RunLevel</em></a> verification is also met, then this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> will be automatically started by the device after its <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> is either rebooted or restarted.
If <em>false</em> this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> will not be started after its <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> is either rebooted or restarted until it is explicitly commanded to do so by either the ACS or another Execution Unit.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.RunLevel">RunLevel</span></td>
<td>unsignedInt(:65535)</td>
<td>W</td>
<td>Determines when this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> will be started.
If <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.AutoStart"><em>AutoStart</em></a> is <em>true</em> and <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>ExecEnv.{i}.CurrentRunLevel</em></a> is greater than or equal to <em>RunLevel</em>, then this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> will be started.
If the value of <a href="#D.Device:1.Device.SoftwareModules.ExecEnv.CurrentRunLevel"><em>ExecEnv.{i}.CurrentRunLevel</em></a> is -1, then the associated <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv.</em></a> doesn’t support Run Levels, thus the value of this parameter is irrelevant when read and setting its value has no impact to the Run Level of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Vendor">Vendor</span></td>
<td>string(:128)</td>
<td>R</td>
<td>Vendor of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Version">Version</span></td>
<td>string(:32)</td>
<td>R</td>
<td>Version of the <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. The format of this value is Execution Environment specific.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Description">Description</span></td>
<td>string(:256)</td>
<td>R</td>
<td>Textual description of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. The format of this value is Execution Environment specific.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.DiskSpaceInUse">DiskSpaceInUse</span></td>
<td>int(-1:)</td>
<td>R</td>
<td><p>The amount of disk space measured in <em>kilobytes</em> currently being used by this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances where this parameter is not applicable.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.MemoryInUse">MemoryInUse</span></td>
<td>int(-1:)</td>
<td>R</td>
<td><p>The amount of physical RAM measured in <em>kilobytes</em> currently being used by this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. A value of -1 MUST be used for <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances where this parameter is not applicable.</p>

<p>Active Notification requests for this parameter MAY be denied.</p></td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.References">References</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a table row, or an empty string. Represents the instances of multi-instanced objects that are directly controlled by, and have come into existence because of, this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>. See [<a href="#R.TR-157a3">Appendix II.3.2/TR-157a3</a>] for more description and some examples.
NOTE: All other objects and parameters (i.e. not multi-instanced objects) that this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> has caused to come into existence can be discovered via the <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel."><em>DeviceInfo.SupportedDataModel.{i}.</em></a> table.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.AssociatedProcessList">AssociatedProcessList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process."><em>DeviceInfo.ProcessStatus.Process.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the system processes that are active in the system because of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.
If <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status"><em>Status</em></a> is not <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status.Active"><em>Active</em></a> it is expected that this list will be an empty string. Some <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances MIGHT NOT have any system processes irrespective of the value of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status"><em>Status</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.VendorLogList">VendorLogList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.VendorLogFile."><em>DeviceInfo.VendorLogFile.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the vendor log files that have come into existence because of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.
When the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> (that caused this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> to come into existence) is uninstalled the vendor log files referenced here SHOULD be removed from the CPE.
Not all <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances will actually have a corresponding vendor log file, in which case the value of this parameter will be an empty string.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.VendorConfigList">VendorConfigList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.VendorConfigFile."><em>DeviceInfo.VendorConfigFile.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the vendor config files that have come into existence because of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.
When the <a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit."><em>DeploymentUnit</em></a> (that caused this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> to come into existence) is uninstalled the vendor config files referenced here SHOULD be removed from the CPE.
Not all <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> instances will actually have a corresponding vendor config file, in which case the value of this parameter will be an empty string.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.SupportedDataModelList">SupportedDataModelList</span></td>
<td>string[]</td>
<td>R</td>
<td>Comma-separated list of strings. Each list item MUST be the Path Name of a row in the <a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel."><em>DeviceInfo.SupportedDataModel.</em></a> table. If the referenced object is deleted, the corresponding item MUST be removed from the list. Represents the CWMP-DT schema instances that have been introduced to this device because of the existence of this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a>.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="parameter">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionEnvRef">ExecutionEnvRef</span></td>
<td>string</td>
<td>R</td>
<td>The value MUST be the Path Name of a row in the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv.</em></a> table. If the referenced object is deleted, the parameter value MUST be set to an empty string. Represents the <a href="#D.Device:1.Device.SoftwareModules.ExecEnv."><em>ExecEnv</em></a> that this <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit."><em>ExecutionUnit</em></a> is associated with.</td>
<td>-</td>
<td>1.0</td></tr>
<tr class="object">
<td><span id="D.Device:1.Device.SoftwareModules.ExecutionUnit.Extensions.">Device.SoftwareModules.ExecutionUnit.{i}.Extensions.</span></td>
<td><span title="object">object</span></td>
<td>R</td>
<td>This object proposes a general location for vendor extensions specific to this Execution Unit, which allows multiple Execution Units to expose parameters without the concern of conflicting parameter names. These vendor extensions are related to displaying status and maintaining configuration for this Execution Unit.
It is also possible for the Execution Unit to expose status and configuration parameters within Service objects or as embedded objects and parameters directly within the root data model, in which case the combination of <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.References"><em>References</em></a> and <a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.SupportedDataModelList"><em>SupportedDataModelList</em></a> will be used to determine their locations.
See [<a href="#R.TR-157a3">Appendix II.3.2/TR-157a3</a>] for more description and some examples.</td>
<td>-</td>
<td>1.0</td></tr></tbody></table>

<h2 id="inform-and-notification-requirements">Inform and Notification Requirements</h2>

<h3 id="forced-inform-parameters">Forced Inform Parameters</h3>

<table class="middle-width partial-border">
<thead>
<tr>
<th>Parameter</th></tr></thead>
<tbody>
<tr class="deprecated-parameter">
<td><a href="#D.Device:1.Device.DeviceSummary">Device.DeviceSummary</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.HardwareVersion">Device.DeviceInfo.HardwareVersion</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SoftwareVersion">Device.DeviceInfo.SoftwareVersion</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ParameterKey">Device.ManagementServer.ParameterKey</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ConnectionRequestURL">Device.ManagementServer.ConnectionRequestURL</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPAddress">Device.LAN.IPAddress</a></td></tr></tbody></table>

<h3 id="default-active-notification-parameters">Default Active Notification Parameters</h3>

<table class="middle-width partial-border">
<thead>
<tr>
<th>Parameter</th></tr></thead>
<tbody>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status">Device.SoftwareModules.ExecutionUnit.{i}.Status</a></td></tr></tbody></table>

<h3 id="parameters-for-which-active-notification-may-be-denied">Parameters for which Active Notification MAY be Denied</h3>

<table class="middle-width partial-border">
<thead>
<tr>
<th>Parameter</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.">Device.DeviceInfo.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ModelName">ModelName</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.Description">Description</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.UpTime">UpTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.FirstUseDate">FirstUseDate</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.DeviceLog">DeviceLog</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.ManagementServer.">Device.ManagementServer.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ParameterKey">ParameterKey</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.Time.">Device.Time.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.CurrentLocalTime">CurrentLocalTime</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.Stats.">Device.LAN.Stats.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.ConnectionUpTime">ConnectionUpTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalBytesSent">TotalBytesSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalBytesReceived">TotalBytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalPacketsSent">TotalPacketsSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalPacketsReceived">TotalPacketsReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.CurrentDayInterval">CurrentDayInterval</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.CurrentDayBytesSent">CurrentDayBytesSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.CurrentDayBytesReceived">CurrentDayBytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.CurrentDayPacketsSent">CurrentDayPacketsSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.CurrentDayPacketsReceived">CurrentDayPacketsReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.QuarterHourInterval">QuarterHourInterval</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.QuarterHourBytesSent">QuarterHourBytesSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.QuarterHourBytesReceived">QuarterHourBytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.QuarterHourPacketsSent">QuarterHourPacketsSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.QuarterHourPacketsReceived">QuarterHourPacketsReceived</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.">Device.LAN.IPPingDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.SuccessCount">SuccessCount</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.FailureCount">FailureCount</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.AverageResponseTime">AverageResponseTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.MinimumResponseTime">MinimumResponseTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.MaximumResponseTime">MaximumResponseTime</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.">Device.LAN.TraceRouteDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.ResponseTime">ResponseTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.NumberOfRouteHops">NumberOfRouteHops</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.">Device.LAN.TraceRouteDiagnostics.RouteHops.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.HopHost">HopHost</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.">Device.DownloadDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.ROMTime">ROMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.BOMTime">BOMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.EOMTime">EOMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TestBytesReceived">TestBytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TotalBytesReceived">TotalBytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UploadDiagnostics.">Device.UploadDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.ROMTime">ROMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.BOMTime">BOMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.EOMTime">EOMTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TotalBytesSent">TotalBytesSent</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UDPEchoConfig.">Device.UDPEchoConfig.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.PacketsReceived">PacketsReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.PacketsResponded">PacketsResponded</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.BytesReceived">BytesReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.BytesResponded">BytesResponded</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.TimeFirstPacketReceived">TimeFirstPacketReceived</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.TimeLastPacketReceived">TimeLastPacketReceived</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.">Device.DeviceInfo.MemoryStatus.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.Free">Free</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.">Device.DeviceInfo.ProcessStatus.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.CPUUsage">CPUUsage</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.">Device.DeviceInfo.ProcessStatus.Process.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Size">Size</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.CPUTime">CPUTime</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State">State</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">Device.DeviceInfo.TemperatureStatus.TemperatureSensor.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Value">Value</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LastUpdate">LastUpdate</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UserInterface.LocalDisplay.">Device.UserInterface.LocalDisplay.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UserInterface.LocalDisplay.PosX">PosX</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UserInterface.LocalDisplay.PosY">PosY</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UserInterface.LocalDisplay.Width">Width</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UserInterface.LocalDisplay.Height">Height</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SmartCardReader.">Device.SmartCardReader.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SmartCardReader.DecryptionFailedCounter">DecryptionFailedCounter</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SmartCardReader.DecryptionFailedNoKeyCounter">DecryptionFailedNoKeyCounter</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.">Device.SelfTestDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.Results">Results</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.">Device.NSLookupDiagnostics.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState">DiagnosticsState</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.SuccessCount">SuccessCount</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.ResultNumberOfEntries">ResultNumberOfEntries</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.">Device.NSLookupDiagnostics.Result.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.Status">Status</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType">AnswerType</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.HostNameReturned">HostNameReturned</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.IPAddresses">IPAddresses</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.DNSServerIP">DNSServerIP</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.ResponseTime">ResponseTime</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.">Device.PeriodicStatistics.SampleSet.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds">SampleSeconds</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.">Device.PeriodicStatistics.SampleSet.{i}.Parameter.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleSeconds">SampleSeconds</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SuspectData">SuspectData</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Values">Values</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.">Device.SoftwareModules.ExecEnv.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AvailableDiskSpace">AvailableDiskSpace</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AvailableMemory">AvailableMemory</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.ActiveExecutionUnits">ActiveExecutionUnits</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.">Device.SoftwareModules.DeploymentUnit.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status">Status</a></td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.">Device.SoftwareModules.ExecutionUnit.{i}.</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.DiskSpaceInUse">DiskSpaceInUse</a></td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.MemoryInUse">MemoryInUse</a></td></tr></tbody></table>

<h2 id="profile-definitions">Profile Definitions</h2>

<h3 id="notation">Notation</h3>

<p>The following abbreviations are used to specify profile requirements:</p>

<table class="middle-width partial-border profile-notation-table">
<thead>
<tr>
<th>Abbreviation</th>
<th>Description</th></tr></thead>
<tbody>
<tr>
<td>R</td>
<td>Read support is REQUIRED.</td></tr>
<tr>
<td>W</td>
<td>Both Read and Write support is REQUIRED. This MUST NOT be specified for a parameter that is defined as read-only.</td></tr>
<tr>
<td>P</td>
<td>The object is REQUIRED to be present.</td></tr>
<tr>
<td>C</td>
<td>Creation and deletion of instances of the object is REQUIRED.</td></tr>
<tr>
<td>A</td>
<td>Creation of instances of the object is REQUIRED, but deletion is not REQUIRED.</td></tr>
<tr>
<td>D</td>
<td>Deletion of instances of the object is REQUIRED, but creation is not REQUIRED.</td></tr></tbody></table>

<h3 id="P.Device:1.Baseline:1">Baseline:1 Profile</h3>

<p>This table defines the <em>Baseline:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.">Device.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceSummary">DeviceSummary</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.">Device.DeviceInfo.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.Manufacturer">Manufacturer</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ManufacturerOUI">ManufacturerOUI</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ModelName">ModelName</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.Description">Description</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SerialNumber">SerialNumber</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.HardwareVersion">HardwareVersion</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SoftwareVersion">SoftwareVersion</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.DeviceStatus">DeviceStatus</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.UpTime">UpTime</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.ManagementServer.">Device.ManagementServer.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.URL">URL</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.Username">Username</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.Password">Password</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.PeriodicInformEnable">PeriodicInformEnable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.PeriodicInformInterval">PeriodicInformInterval</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.PeriodicInformTime">PeriodicInformTime</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ParameterKey">ParameterKey</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ConnectionRequestURL">ConnectionRequestURL</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ConnectionRequestUsername">ConnectionRequestUsername</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.ConnectionRequestPassword">ConnectionRequestPassword</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.UpgradesManaged">UpgradesManaged</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.GatewayInfo:1">GatewayInfo:1 Profile</h3>

<p>This table defines the <em>GatewayInfo:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.GatewayInfo.">Device.GatewayInfo.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.GatewayInfo.ManufacturerOUI">ManufacturerOUI</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.GatewayInfo.ProductClass">ProductClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.GatewayInfo.SerialNumber">SerialNumber</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.Time:1">Time:1 Profile</h3>

<p>This table defines the <em>Time:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.Time.">Device.Time.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.NTPServer1">NTPServer1</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.NTPServer2">NTPServer2</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.CurrentLocalTime">CurrentLocalTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.LocalTimeZone">LocalTimeZone</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.LAN:1">LAN:1 Profile</h3>

<p>This table defines the <em>LAN:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.">Device.LAN.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.AddressingType">AddressingType</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPAddress">IPAddress</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.SubnetMask">SubnetMask</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.DefaultGateway">DefaultGateway</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.DNSServers">DNSServers</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.MACAddress">MACAddress</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.Stats.">Device.LAN.Stats.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.ConnectionUpTime">ConnectionUpTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalBytesSent">TotalBytesSent</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalBytesReceived">TotalBytesReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalPacketsSent">TotalPacketsSent</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.Stats.TotalPacketsReceived">TotalPacketsReceived</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.IPPing:1">IPPing:1 Profile</h3>

<p>This table defines the <em>IPPing:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.">Device.LAN.IPPingDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.Host">Host</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.NumberOfRepetitions">NumberOfRepetitions</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.Timeout">Timeout</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DataBlockSize">DataBlockSize</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.DSCP">DSCP</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.SuccessCount">SuccessCount</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.FailureCount">FailureCount</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.AverageResponseTime">AverageResponseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.MinimumResponseTime">MinimumResponseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.MaximumResponseTime">MaximumResponseTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.TraceRoute:1">TraceRoute:1 Profile</h3>

<p>This table defines the <em>TraceRoute:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.">Device.LAN.TraceRouteDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.Host">Host</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.Timeout">Timeout</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DataBlockSize">DataBlockSize</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.MaxHopCount">MaxHopCount</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.DSCP">DSCP</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.ResponseTime">ResponseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.NumberOfRouteHops">NumberOfRouteHops</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.">Device.LAN.TraceRouteDiagnostics.RouteHops.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.HopHost">HopHost</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UDPConnReq:1">UDPConnReq:1 Profile</h3>

<p>This table defines the <em>UDPConnReq:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.ManagementServer.">Device.ManagementServer.</a></td>
<td>-</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.UDPConnectionRequestAddress">UDPConnectionRequestAddress</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.UDPConnectionRequestAddressNotificationLimit">UDPConnectionRequestAddressNotificationLimit</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNEnable">STUNEnable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNServerAddress">STUNServerAddress</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNServerPort">STUNServerPort</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNUsername">STUNUsername</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNPassword">STUNPassword</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNMaximumKeepAlivePeriod">STUNMaximumKeepAlivePeriod</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.STUNMinimumKeepAlivePeriod">STUNMinimumKeepAlivePeriod</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.NATDetected">NATDetected</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.Download:1">Download:1 Profile</h3>

<p>This table defines the <em>Download:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.Capabilities.PerformanceDiagnostic.">Device.Capabilities.PerformanceDiagnostic.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Capabilities.PerformanceDiagnostic.DownloadTransports">DownloadTransports</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.">Device.DownloadDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.Interface">Interface</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.DownloadURL">DownloadURL</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.DSCP">DSCP</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.EthernetPriority">EthernetPriority</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.ROMTime">ROMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.BOMTime">BOMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.EOMTime">EOMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TestBytesReceived">TestBytesReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TotalBytesReceived">TotalBytesReceived</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.DownloadTCP:1">DownloadTCP:1 Profile</h3>

<p>This table defines the <em>DownloadTCP:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.">Device.DownloadDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.Upload:1">Upload:1 Profile</h3>

<p>This table defines the <em>Upload:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.Capabilities.PerformanceDiagnostic.">Device.Capabilities.PerformanceDiagnostic.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Capabilities.PerformanceDiagnostic.UploadTransports">UploadTransports</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UploadDiagnostics.">Device.UploadDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.Interface">Interface</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.UploadURL">UploadURL</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.DSCP">DSCP</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.EthernetPriority">EthernetPriority</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.ROMTime">ROMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.BOMTime">BOMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.EOMTime">EOMTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TestFileLength">TestFileLength</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TotalBytesSent">TotalBytesSent</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UploadTCP:1">UploadTCP:1 Profile</h3>

<p>This table defines the <em>UploadTCP:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UploadDiagnostics.">Device.UploadDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TCPOpenRequestTime">TCPOpenRequestTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UploadDiagnostics.TCPOpenResponseTime">TCPOpenResponseTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UDPEcho:1">UDPEcho:1 Profile</h3>

<p>This table defines the <em>UDPEcho:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UDPEchoConfig.">Device.UDPEchoConfig.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.Interface">Interface</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.SourceIPAddress">SourceIPAddress</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.UDPPort">UDPPort</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.PacketsReceived">PacketsReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.PacketsResponded">PacketsResponded</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.BytesReceived">BytesReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.BytesResponded">BytesResponded</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.TimeFirstPacketReceived">TimeFirstPacketReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.TimeLastPacketReceived">TimeLastPacketReceived</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.EchoPlusSupported">EchoPlusSupported</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UDPEchoPlus:1">UDPEchoPlus:1 Profile</h3>

<p>This table defines the <em>UDPEchoPlus:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UDPEchoConfig.">Device.UDPEchoConfig.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UDPEchoConfig.EchoPlusEnabled">EchoPlusEnabled</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.MemoryStatus:1">MemoryStatus:1 Profile</h3>

<p>This table defines the <em>MemoryStatus:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.">Device.DeviceInfo.MemoryStatus.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.Total">Total</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.Free">Free</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.ProcessStatus:1">ProcessStatus:1 Profile</h3>

<p>This table defines the <em>ProcessStatus:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.">Device.DeviceInfo.ProcessStatus.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.CPUUsage">CPUUsage</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.ProcessNumberOfEntries">ProcessNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.">Device.DeviceInfo.ProcessStatus.Process.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.PID">PID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Command">Command</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Size">Size</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.Priority">Priority</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.CPUTime">CPUTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.State">State</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.TempStatus:1">TempStatus:1 Profile</h3>

<p>This table defines the <em>TempStatus:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.">Device.DeviceInfo.TemperatureStatus.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensorNumberOfEntries">TemperatureSensorNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">Device.DeviceInfo.TemperatureStatus.TemperatureSensor.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.ResetTime">ResetTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Value">Value</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LastUpdate">LastUpdate</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MinValue">MinValue</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MinTime">MinTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MaxValue">MaxValue</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.MaxTime">MaxTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.TempStatusAdv:1">TempStatusAdv:1 Profile</h3>

<p>The <em>TempStatusAdv:1</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.TempStatus:1">TempStatus:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">Device.DeviceInfo.TemperatureStatus.TemperatureSensor.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.Reset">Reset</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmValue">LowAlarmValue</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.LowAlarmTime">LowAlarmTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmValue">HighAlarmValue</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.HighAlarmTime">HighAlarmTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.AutonXferComplPolicy:1">AutonXferComplPolicy:1 Profile</h3>

<p>This table defines the <em>AutonXferComplPolicy:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.">Device.ManagementServer.AutonomousTransferCompletePolicy.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.TransferTypeFilter">TransferTypeFilter</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.FileTypeFilter">FileTypeFilter</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.User:1">User:1 Profile</h3>

<p>This table defines the <em>User:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.">Device.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UserNumberOfEntries">UserNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.User.">Device.User.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.User.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.User.Username">Username</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.User.Password">Password</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.UPnPDev:1">UPnPDev:1 Profile</h3>

<p>This table defines the <em>UPnPDev:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.">Device.UPnP.</a></td>
<td>P</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Device.">Device.UPnP.Device.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPMediaServer">UPnPMediaServer</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPMediaRenderer">UPnPMediaRenderer</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPWLANAccessPoint">UPnPWLANAccessPoint</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPQoSDevice">UPnPQoSDevice </a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPQoSPolicyHolder">UPnPQoSPolicyHolder</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.UPnPIGD">UPnPIGD</a></td>
<td>W</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.">Device.UPnP.Device.Capabilities.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPArchitecture">UPnPArchitecture</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPMediaServer">UPnPMediaServer</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPMediaRenderer">UPnPMediaRenderer</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPWLANAccessPoint">UPnPWLANAccessPoint</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPBasicDevice">UPnPBasicDevice</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPQoSDevice">UPnPQoSDevice</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPQoSPolicyHolder">UPnPQoSPolicyHolder</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Device.Capabilities.UPnPIGD">UPnPIGD</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UPnPDiscBasic:1">UPnPDiscBasic:1 Profile</h3>

<p>This table defines the <em>UPnPDiscBasic:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.">Device.UPnP.</a></td>
<td>P</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Discovery.">Device.UPnP.Discovery.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDeviceNumberOfEntries">RootDeviceNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.">Device.UPnP.Discovery.RootDevice.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.UUID">UUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.USN">USN</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.LeaseTime">LeaseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.Location">Location</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.Server">Server</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.UPnPDiscAdv:1">UPnPDiscAdv:1 Profile</h3>

<p>The <em>UPnPDiscAdv:1</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.UPnPDiscBasic:1">UPnPDiscBasic:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Discovery.">Device.UPnP.Discovery.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.DeviceNumberOfEntries">DeviceNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.ServiceNumberOfEntries">ServiceNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.">Device.UPnP.Discovery.Device.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.UUID">UUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.USN">USN</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.LeaseTime">LeaseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.Location">Location</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Device.Server">Server</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.">Device.UPnP.Discovery.Service.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.USN">USN</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.LeaseTime">LeaseTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.Location">Location</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.UPnP.Discovery.Service.Server">Server</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.SelfTestDiag:1">SelfTestDiag:1 Profile</h3>

<p>This table defines the <em>SelfTestDiag:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.">Device.SelfTestDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SelfTestDiagnostics.Results">Results</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.NSLookupDiag:1">NSLookupDiag:1 Profile</h3>

<p>This table defines the <em>NSLookupDiag:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.">Device.NSLookupDiagnostics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.DiagnosticsState">DiagnosticsState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Interface">Interface</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.HostName">HostName</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.DNSServer">DNSServer</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Timeout">Timeout</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.NumberOfRepetitions">NumberOfRepetitions</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.SuccessCount">SuccessCount</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.ResultNumberOfEntries">ResultNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.">Device.NSLookupDiagnostics.Result.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.AnswerType">AnswerType</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.HostNameReturned">HostNameReturned</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.IPAddresses">IPAddresses</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.DNSServerIP">DNSServerIP</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.ResponseTime">ResponseTime</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.SimpleFirewall:1">SimpleFirewall:1 Profile</h3>

<p>This table defines the <em>SimpleFirewall:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.Firewall.">Device.Firewall.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Firewall.Config">Config</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Firewall.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Firewall.LastChange">LastChange</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.USBHostsBasic:1">USBHostsBasic:1 Profile</h3>

<p>This table defines the <em>USBHostsBasic:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.">Device.USBHosts.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.HostNumberOfEntries">HostNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.">Device.USBHosts.Host.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Type">Type</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.USBVersion">USBVersion</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.DeviceNumberOfEntries">DeviceNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.">Device.USBHosts.Host.{i}.Device.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceNumber">DeviceNumber</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.USBVersion">USBVersion</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceClass">DeviceClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceSubClass">DeviceSubClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceVersion">DeviceVersion</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.DeviceProtocol">DeviceProtocol</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.ProductID">ProductID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.VendorID">VendorID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Manufacturer">Manufacturer</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.ProductClass">ProductClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.SerialNumber">SerialNumber</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Port">Port</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Rate">Rate</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Parent">Parent</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.MaxChildren">MaxChildren</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.USBHostsAdv:1">USBHostsAdv:1 Profile</h3>

<p>The <em>USBHostsAdv:1</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.USBHostsBasic:1">USBHostsBasic:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.">Device.USBHosts.Host.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Reset">Reset</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.PowerManagementEnable">PowerManagementEnable</a></td>
<td>W</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.">Device.USBHosts.Host.{i}.Device.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.IsSuspended">IsSuspended</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.IsSelfPowered">IsSelfPowered</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.ConfigurationNumberOfEntries">ConfigurationNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.">Device.USBHosts.Host.{i}.Device.{i}.Configuration.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.ConfigurationNumber">ConfigurationNumber</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.InterfaceNumberOfEntries">InterfaceNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.">Device.USBHosts.Host.{i}.Device.{i}.Configuration.{i}.Interface.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceNumber">InterfaceNumber</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceClass">InterfaceClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceSubClass">InterfaceSubClass</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.InterfaceProtocol">InterfaceProtocol</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.PeriodicStatsBase:1">PeriodicStatsBase:1 Profile</h3>

<p>This table defines the <em>PeriodicStatsBase:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.">Device.PeriodicStatistics.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.MinSampleInterval">MinSampleInterval</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.MaxReportSamples">MaxReportSamples</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSetNumberOfEntries">SampleSetNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.">Device.PeriodicStatistics.SampleSet.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Name">Name</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleInterval">SampleInterval</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportSamples">ReportSamples</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportStartTime">ReportStartTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ReportEndTime">ReportEndTime</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.SampleSeconds">SampleSeconds</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ParameterNumberOfEntries">ParameterNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.">Device.PeriodicStatistics.SampleSet.{i}.Parameter.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Reference">Reference</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleSeconds">SampleSeconds</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SuspectData">SuspectData</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Values">Values</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.PeriodicStatsAdv:1">PeriodicStatsAdv:1 Profile</h3>

<p>The <em>PeriodicStatsAdv:1</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.PeriodicStatsBase:1">PeriodicStatsBase:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.">Device.PeriodicStatistics.SampleSet.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.TimeReference">TimeReference</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.FetchSamples">FetchSamples</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.ForceSample">ForceSample</a></td>
<td>W</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.">Device.PeriodicStatistics.SampleSet.{i}.Parameter.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.SampleMode">SampleMode</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.CalculationMode">CalculationMode</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.LowThreshold">LowThreshold</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.HighThreshold">HighThreshold</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.Failures">Failures</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.DownloadAnnounce:1">DownloadAnnounce:1 Profile</h3>

<p>This table defines the <em>DownloadAnnounce:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadAvailability.">Device.DownloadAvailability.</a></td>
<td>P</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.">Device.DownloadAvailability.Announcement.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.GroupNumberOfEntries">GroupNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.">Device.DownloadAvailability.Announcement.Group.{i}.</a></td>
<td>C</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.URL">URL</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.DownloadQuery:1">DownloadQuery:1 Profile</h3>

<p>This table defines the <em>DownloadQuery:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadAvailability.">Device.DownloadAvailability.</a></td>
<td>P</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DownloadAvailability.Query.">Device.DownloadAvailability.Query.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Query.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Query.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DownloadAvailability.Query.URL">URL</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.SupportedDataModel:1">SupportedDataModel:1 Profile</h3>

<p>This table defines the <em>SupportedDataModel:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.">Device.DeviceInfo.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModelNumberOfEntries">SupportedDataModelNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.">Device.DeviceInfo.SupportedDataModel.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.URL">URL</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.URN">URN</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.Features">Features</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.Time:2">Time:2 Profile</h3>

<p>The <em>Time:2</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.Time:1">Time:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.Time.">Device.Time.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.Time.Status">Status</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.TempStatusAdv:2">TempStatusAdv:2 Profile</h3>

<p>The <em>TempStatusAdv:2</em> profile for the <em>Device:1</em> data model is defined as the union of the <em><a href="#P.Device:1.TempStatusAdv:1">TempStatusAdv:1</a></em> profile and the additional requirements defined in this table.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">Device.DeviceInfo.TemperatureStatus.TemperatureSensor.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.PollingInterval">PollingInterval</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.Processors:1">Processors:1 Profile</h3>

<p>This table defines the <em>Processors:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.Processor.">Device.DeviceInfo.Processor.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.Processor.Architecture">Architecture</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.VendorLogFiles:1">VendorLogFiles:1 Profile</h3>

<p>This table defines the <em>VendorLogFiles:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.">Device.DeviceInfo.VendorLogFile.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.MaximumSize">MaximumSize</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.Persistent">Persistent</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.DUStateChngComplPolicy:1">DUStateChngComplPolicy:1 Profile</h3>

<p>This table defines the <em>DUStateChngComplPolicy:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.">Device.ManagementServer.DUStateChangeComplPolicy.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.OperationTypeFilter">OperationTypeFilter</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.ResultTypeFilter">ResultTypeFilter</a></td>
<td>W</td></tr></tbody></table>

<h3 id="P.Device:1.SM_ExecEnvs:1">SM_ExecEnvs:1 Profile</h3>

<p>This table defines the <em>SM_ExecEnvs:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.">Device.SoftwareModules.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnvNumberOfEntries">ExecEnvNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.">Device.SoftwareModules.ExecEnv.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Type">Type</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AllocatedDiskSpace">AllocatedDiskSpace</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AvailableDiskSpace">AvailableDiskSpace</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AllocatedMemory">AllocatedMemory</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.AvailableMemory">AvailableMemory</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.ActiveExecutionUnits">ActiveExecutionUnits</a></td>
<td>R</td></tr></tbody></table>

<h3 id="P.Device:1.SM_DeployAndExecUnits:1">SM_DeployAndExecUnits:1 Profile</h3>

<p>This table defines the <em>SM_DeployAndExecUnits:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.">Device.SoftwareModules.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnitNumberOfEntries">DeploymentUnitNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnitNumberOfEntries">ExecutionUnitNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.">Device.SoftwareModules.DeploymentUnit.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID">UUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.DUID">DUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Resolved">Resolved</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.URL">URL</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Description">Description</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.VendorLogList">VendorLogList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.VendorConfigList">VendorConfigList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionUnitList">ExecutionUnitList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionEnvRef">ExecutionEnvRef</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.">Device.SoftwareModules.ExecutionUnit.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.EUID">EUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecEnvLabel">ExecEnvLabel</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState">RequestedState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode">ExecutionFaultCode</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultMessage">ExecutionFaultMessage</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Description">Description</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.References">References</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.AssociatedProcessList">AssociatedProcessList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.VendorLogList">VendorLogList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.VendorConfigList">VendorConfigList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.SupportedDataModelList">SupportedDataModelList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionEnvRef">ExecutionEnvRef</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Extensions.">Device.SoftwareModules.ExecutionUnit.{i}.Extensions.</a></td>
<td>P</td></tr></tbody></table>

<h3 id="P.Device:1.SM_Baseline:1">SM_Baseline:1 Profile</h3>

<p>This table defines the <em>SM_Baseline:1</em> profile for the <em>Device:1</em> data model.
The minimum REQUIRED version for this profile is Device:1.0.</p>

<table class="middle-width partial-border profile-requirements-table">
<colgroup>
<col style="width: 90.0%;"></col>
<col style="width: 10.0%;"></col></colgroup>
<thead>
<tr>
<th>Name</th>
<th>Requirement</th></tr></thead>
<tbody>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.">Device.SoftwareModules.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnvNumberOfEntries">ExecEnvNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnitNumberOfEntries">DeploymentUnitNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnitNumberOfEntries">ExecutionUnitNumberOfEntries</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.">Device.SoftwareModules.ExecEnv.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Enable">Enable</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Type">Type</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.ActiveExecutionUnits">ActiveExecutionUnits</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.">Device.SoftwareModules.DeploymentUnit.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.UUID">UUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.DUID">DUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Resolved">Resolved</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.URL">URL</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionUnitList">ExecutionUnitList</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.ExecutionEnvRef">ExecutionEnvRef</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.">Device.SoftwareModules.ExecutionUnit.{i}.</a></td>
<td>P</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.EUID">EUID</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Name">Name</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecEnvLabel">ExecEnvLabel</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Status">Status</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.RequestedState">RequestedState</a></td>
<td>W</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultCode">ExecutionFaultCode</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.ExecutionFaultMessage">ExecutionFaultMessage</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Vendor">Vendor</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Version">Version</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.References">References</a></td>
<td>R</td></tr>
<tr class="parameter">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.SupportedDataModelList">SupportedDataModelList</a></td>
<td>R</td></tr>
<tr class="object">
<td><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Extensions.">Device.SoftwareModules.ExecutionUnit.{i}.Extensions.</a></td>
<td>P</td></tr></tbody></table>

<hr/>

<p>Generated by <a href="https://www.broadband-forum.org">Broadband Forum</a> <a href="https://pypi.org/project/bbfreport">bbfreport</a> v2.2.0 (2024-07-23 version) on 2024-07-23 at 10:56:52 UTC.<br/>report.py –filter model=Device –output <stdout> –format markdown tr-157-1-3-0.xml</p></div>

<div id="TOC"><h1 id="table-of-contents">Table of Contents</h1>

<ul class="collapsed expanded">
<li><a href="#data-types">Data Types</a></li>
<li><a href="#references">References</a></li>
<li><a href="#legend">Legend</a></li>
<li><span class="collapsible expandable"><a href="#device17-data-model">Device:1.7 Data Model</a></span>

<ul class="collapsed expanded">
<li><span class="collapsible expandable"><a href="#D.Device:1.Device.">Device.</a></span>

<ul class="collapsed expanded ordered">
<li><a href="#D.Device:1.Device.Services.">Services.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.DeviceInfo.">DeviceInfo.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.DeviceInfo.MemoryStatus.">MemoryStatus.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.">ProcessStatus.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.DeviceInfo.ProcessStatus.Process.">Process.{i}.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.">TemperatureStatus.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.DeviceInfo.TemperatureStatus.TemperatureSensor.">TemperatureSensor.{i}.</a></li></ul></li>
<li><a href="#D.Device:1.Device.DeviceInfo.NetworkProperties.">NetworkProperties.</a></li>
<li><a href="#D.Device:1.Device.DeviceInfo.SupportedDataModel.">SupportedDataModel.{i}.</a></li>
<li><a href="#D.Device:1.Device.DeviceInfo.VendorConfigFile.">VendorConfigFile.{i}.</a></li>
<li><a href="#D.Device:1.Device.DeviceInfo.Processor.">Processor.{i}.</a></li>
<li><a href="#D.Device:1.Device.DeviceInfo.VendorLogFile.">VendorLogFile.{i}.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.ManagementServer.">ManagementServer.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.ManagementServer.AutonomousTransferCompletePolicy.">AutonomousTransferCompletePolicy.</a></li>
<li><a href="#D.Device:1.Device.ManagementServer.DUStateChangeComplPolicy.">DUStateChangeComplPolicy.</a></li></ul></li>
<li><a href="#D.Device:1.Device.GatewayInfo.">GatewayInfo.</a></li>
<li><a href="#D.Device:1.Device.Config.">Config.</a></li>
<li><a href="#D.Device:1.Device.Time.">Time.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.UserInterface.">UserInterface.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.UserInterface.RemoteAccess.">RemoteAccess.</a></li>
<li><a href="#D.Device:1.Device.UserInterface.LocalDisplay.">LocalDisplay.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.LAN.">LAN.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.LAN.DHCPOption.">DHCPOption.{i}.</a></li>
<li><a href="#D.Device:1.Device.LAN.Stats.">Stats.</a></li>
<li><a href="#D.Device:1.Device.LAN.IPPingDiagnostics.">IPPingDiagnostics.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.">TraceRouteDiagnostics.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.LAN.TraceRouteDiagnostics.RouteHops.">RouteHops.{i}.</a></li></ul></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.Capabilities.">Capabilities.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.Capabilities.PerformanceDiagnostic.">PerformanceDiagnostic.</a></li></ul></li>
<li><a href="#D.Device:1.Device.DownloadDiagnostics.">DownloadDiagnostics.</a></li>
<li><a href="#D.Device:1.Device.UploadDiagnostics.">UploadDiagnostics.</a></li>
<li><a href="#D.Device:1.Device.UDPEchoConfig.">UDPEchoConfig.</a></li>
<li><a href="#D.Device:1.Device.User.">User.{i}.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.UPnP.">UPnP.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.UPnP.Device.">Device.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.UPnP.Device.Capabilities.">Capabilities.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.UPnP.Discovery.">Discovery.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.UPnP.Discovery.RootDevice.">RootDevice.{i}.</a></li>
<li><a href="#D.Device:1.Device.UPnP.Discovery.Device.">Device.{i}.</a></li>
<li><a href="#D.Device:1.Device.UPnP.Discovery.Service.">Service.{i}.</a></li></ul></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.DLNA.">DLNA.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.DLNA.Capabilities.">Capabilities.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.SmartCardReader.">SmartCardReader.{i}.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.SmartCardReader.SmartCard.">SmartCard.</a></li></ul></li>
<li><a href="#D.Device:1.Device.SelfTestDiagnostics.">SelfTestDiagnostics.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.NSLookupDiagnostics.">NSLookupDiagnostics.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.NSLookupDiagnostics.Result.">Result.{i}.</a></li></ul></li>
<li><a href="#D.Device:1.Device.Firewall.">Firewall.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.USBHosts.">USBHosts.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.USBHosts.Host.">Host.{i}.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.USBHosts.Host.Device.">Device.{i}.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.">Configuration.{i}.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.USBHosts.Host.Device.Configuration.Interface.">Interface.{i}.</a></li></ul></li></ul></li></ul></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.PeriodicStatistics.">PeriodicStatistics.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.">SampleSet.{i}.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.PeriodicStatistics.SampleSet.Parameter.">Parameter.{i}.</a></li></ul></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.DownloadAvailability.">DownloadAvailability.</a></span>

<ul class="collapsed">
<li><span class="expandable"><a href="#D.Device:1.Device.DownloadAvailability.Announcement.">Announcement.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.DownloadAvailability.Announcement.Group.">Group.{i}.</a></li></ul></li>
<li><a href="#D.Device:1.Device.DownloadAvailability.Query.">Query.</a></li></ul></li>
<li><span class="expandable"><a href="#D.Device:1.Device.SoftwareModules.">SoftwareModules.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.SoftwareModules.ExecEnv.">ExecEnv.{i}.</a></li>
<li><a href="#D.Device:1.Device.SoftwareModules.DeploymentUnit.">DeploymentUnit.{i}.</a></li>
<li><span class="expandable"><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.">ExecutionUnit.{i}.</a></span>

<ul class="collapsed">
<li><a href="#D.Device:1.Device.SoftwareModules.ExecutionUnit.Extensions.">Extensions.</a></li></ul></li></ul></li></ul></li>
<li><span class="expandable"><a href="#inform-and-notification-requirements">Inform and Notification Requirements</a></span>

<ul class="collapsed">
<li><a href="#forced-inform-parameters">Forced Inform Parameters</a></li>
<li><a href="#default-active-notification-parameters">Default Active Notification Parameters</a></li>
<li><a href="#parameters-for-which-active-notification-may-be-denied">Parameters for which Active Notification MAY be Denied</a></li></ul></li>
<li><span class="expandable"><a href="#profile-definitions">Profile Definitions</a></span>

<ul class="collapsed ordered">
<li><a href="#notation">Notation</a></li>
<li><a href="#P.Device:1.Baseline:1">Baseline:1 Profile</a></li>
<li><a href="#P.Device:1.GatewayInfo:1">GatewayInfo:1 Profile</a></li>
<li><a href="#P.Device:1.Time:1">Time:1 Profile</a></li>
<li><a href="#P.Device:1.LAN:1">LAN:1 Profile</a></li>
<li><a href="#P.Device:1.IPPing:1">IPPing:1 Profile</a></li>
<li><a href="#P.Device:1.TraceRoute:1">TraceRoute:1 Profile</a></li>
<li><a href="#P.Device:1.UDPConnReq:1">UDPConnReq:1 Profile</a></li>
<li><a href="#P.Device:1.Download:1">Download:1 Profile</a></li>
<li><a href="#P.Device:1.DownloadTCP:1">DownloadTCP:1 Profile</a></li>
<li><a href="#P.Device:1.Upload:1">Upload:1 Profile</a></li>
<li><a href="#P.Device:1.UploadTCP:1">UploadTCP:1 Profile</a></li>
<li><a href="#P.Device:1.UDPEcho:1">UDPEcho:1 Profile</a></li>
<li><a href="#P.Device:1.UDPEchoPlus:1">UDPEchoPlus:1 Profile</a></li>
<li><a href="#P.Device:1.MemoryStatus:1">MemoryStatus:1 Profile</a></li>
<li><a href="#P.Device:1.ProcessStatus:1">ProcessStatus:1 Profile</a></li>
<li><a href="#P.Device:1.TempStatus:1">TempStatus:1 Profile</a></li>
<li><a href="#P.Device:1.TempStatusAdv:1">TempStatusAdv:1 Profile</a></li>
<li><a href="#P.Device:1.AutonXferComplPolicy:1">AutonXferComplPolicy:1 Profile</a></li>
<li><a href="#P.Device:1.User:1">User:1 Profile</a></li>
<li><a href="#P.Device:1.UPnPDev:1">UPnPDev:1 Profile</a></li>
<li><a href="#P.Device:1.UPnPDiscBasic:1">UPnPDiscBasic:1 Profile</a></li>
<li><a href="#P.Device:1.UPnPDiscAdv:1">UPnPDiscAdv:1 Profile</a></li>
<li><a href="#P.Device:1.SelfTestDiag:1">SelfTestDiag:1 Profile</a></li>
<li><a href="#P.Device:1.NSLookupDiag:1">NSLookupDiag:1 Profile</a></li>
<li><a href="#P.Device:1.SimpleFirewall:1">SimpleFirewall:1 Profile</a></li>
<li><a href="#P.Device:1.USBHostsBasic:1">USBHostsBasic:1 Profile</a></li>
<li><a href="#P.Device:1.USBHostsAdv:1">USBHostsAdv:1 Profile</a></li>
<li><a href="#P.Device:1.PeriodicStatsBase:1">PeriodicStatsBase:1 Profile</a></li>
<li><a href="#P.Device:1.PeriodicStatsAdv:1">PeriodicStatsAdv:1 Profile</a></li>
<li><a href="#P.Device:1.DownloadAnnounce:1">DownloadAnnounce:1 Profile</a></li>
<li><a href="#P.Device:1.DownloadQuery:1">DownloadQuery:1 Profile</a></li>
<li><a href="#P.Device:1.SupportedDataModel:1">SupportedDataModel:1 Profile</a></li>
<li><a href="#P.Device:1.Time:2">Time:2 Profile</a></li>
<li><a href="#P.Device:1.TempStatusAdv:2">TempStatusAdv:2 Profile</a></li>
<li><a href="#P.Device:1.Processors:1">Processors:1 Profile</a></li>
<li><a href="#P.Device:1.VendorLogFiles:1">VendorLogFiles:1 Profile</a></li>
<li><a href="#P.Device:1.DUStateChngComplPolicy:1">DUStateChngComplPolicy:1 Profile</a></li>
<li><a href="#P.Device:1.SM_ExecEnvs:1">SM_ExecEnvs:1 Profile</a></li>
<li><a href="#P.Device:1.SM_DeployAndExecUnits:1">SM_DeployAndExecUnits:1 Profile</a></li>
<li><a href="#P.Device:1.SM_Baseline:1">SM_Baseline:1 Profile</a></li></ul></li></ul></li></ul></div>
</body>
</html>
